{"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_blueprint_gap", "name": "Foundry mined blueprint gap alignment: yssc-dev/master-fc", "shortDescription": {"text": "Foundry mined blueprint gap alignment: yssc-dev/master-fc"}, "fullDescription": {"text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_high_confidence_link\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#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: yssc-dev/master-fc\nThread: yssc-dev/master-fc#3\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: yssc-dev/master-fc#3\nRepo: yssc-dev/master-fc\nIssue/PR number: 3\nGraph consistency label: supported_by_high_confidence_link\nNodes: 22\nEdges: 31\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'pr_file': 2, 'commit': 2, 'thread': 1, 'repo':"}, "properties": {"scanner": "foundry_dataset", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_assumption_check", "name": "Foundry mined assumption checks: yssc-dev/master-fc", "shortDescription": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "fullDescription": {"text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#9\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\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#9\nRepo: yssc-dev/master-fc\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: 3\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-ac027cea43382b45\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pul"}, "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: yssc-dev/master-fc", "shortDescription": {"text": "Foundry mined test ci gap after feedback: yssc-dev/master-fc"}, "fullDescription": {"text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#1\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#1\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: yssc-dev/master-fc#1\nRepo: yssc-dev/master-fc\nIssue/PR number: 1\nGraph consistency label: supported_by_high_confidence_link\nNodes: 23\nEdges: 28\nNode types: {'link_quality': 6, 'commit': 5, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, "}, "properties": {"scanner": "foundry_dataset", "category": "testing", "severity": "high", "confidence": 0.78, "cwe": "", "owasp": ""}}, {"id": "foundry_bad_chain", "name": "Foundry mined bad chains: yssc-dev/master-fc", "shortDescription": {"text": "Foundry mined bad chains: yssc-dev/master-fc"}, "fullDescription": {"text": "Comment chain pattern product: bad_chains\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#21\nOutcome: self_attested_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\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#21\nRepo: yssc-dev/master-fc\nThread label: thread_has_human_issue_and_fix_context\nOutcome: self_attested_unverified\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 5\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 4, 'test_or_ci': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-3f4f1b2084ccad78\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "high", "confidence": 0.84, "cwe": "", "owasp": ""}}, {"id": "foundry_fake_real_gap", "name": "Foundry mined mock as real or placeholder: yssc-dev/master-fc", "shortDescription": {"text": "Foundry mined mock as real or placeholder: yssc-dev/master-fc"}, "fullDescription": {"text": "Graph query export: Mock, sample, placeholder, or self-attested behavior treated as real\nQuery id: mock_as_real_or_placeholder\nQuery type: motif_query\nIntent: Hard negatives for fake completeness and missing real data paths.\nMotif: mock_as_real_or_placeholder\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#21\nEvidence:\nGraph motif: Mock, sample, placeholder, or self-attested behavior treated as real\nMotif id: mock_as_real_or_placeholder\nPolarity: bad\nTraining usage: hard_negative\nSeverity: critical\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#21\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: yssc-dev/master-fc#21\nRepo: yssc-dev/master-fc\nIssue/PR number: 21\nGraph consistency label: supported_by_high_confidence_link\nNodes: 15\nEdges: 27\nNode types: {'pr_file': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "critical", "confidence": 0.82, "cwe": "", "owasp": ""}}, {"id": "scanner-8af72a2f4b4331e7", "name": "Stray `console.log` in TS/JS \u2014 tests/table-width.spec.js:9", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 tests/table-width.spec.js:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2822c3abf23d53f4", "name": "Stray `console.log` in TS/JS \u2014 src/components/dashboard/PlayerAnalyticsLegacy.jsx:267", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/components/dashboard/PlayerAnalyticsLegacy.jsx:267"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8a3597429427f8ae", "name": "Stray `console.log` in TS/JS \u2014 src/components/dashboard/TeamDashboard.jsx:535", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/components/dashboard/TeamDashboard.jsx:535"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-34d9b5eb37c73baf", "name": "Icon-only button without accessible name \u2014 src/components/game/FormationSetup.jsx:59", "shortDescription": {"text": "Icon-only button without accessible name \u2014 src/components/game/FormationSetup.jsx:59"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fd4493fdb6c372d8", "name": "Stray `console.log` in TS/JS \u2014 src/services/appSync.js:142", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/appSync.js:142"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6372cebde0220094", "name": "No auth library detected", "shortDescription": {"text": "No auth library detected"}, "fullDescription": {"text": "The scanner did not find any standard auth library (JWT, OAuth, NextAuth, Auth0, etc.). The repo has auth/admin/session surface indicators, so auth may live in custom code, in a separate service, or be missing."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-28c4a04bd807da0c", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "actions/deploy-pages@v4 can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ad6701f0a8405e22", "name": "GitHub Actions workflow grants broad write permissions", "shortDescription": {"text": "GitHub Actions workflow grants broad write permissions"}, "fullDescription": {"text": "CI tokens with write permissions increase blast radius when an action, dependency, or PR workflow is compromised. Prefer job-level least-privilege permissions."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-db8f564919f2717e", "name": "Very large file: apps-script/Code.js (2784 lines)", "shortDescription": {"text": "Very large file: apps-script/Code.js (2784 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8e44c0ef5daf10c7", "name": "Very large file: src/App.jsx (1632 lines)", "shortDescription": {"text": "Very large file: src/App.jsx (1632 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f47cbf46fdde3176", "name": "Very large file: src/components/dashboard/TeamDashboard.jsx (1005 lines)", "shortDescription": {"text": "Very large file: src/components/dashboard/TeamDashboard.jsx (1005 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "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 262 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 17 placeholder/mock markers across 10 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-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-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-acbd7a123df38387", "name": "Commented-code block (5 lines) in migration-script.js:132", "shortDescription": {"text": "Commented-code block (5 lines) in migration-script.js:132"}, "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-87c8d48e1f320e73", "name": "Commented-code block (6 lines) in design_handoff_monochrome_canvas 2/useTheme.jsx:3", "shortDescription": {"text": "Commented-code block (6 lines) in design_handoff_monochrome_canvas 2/useTheme.jsx: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-16d207d8ec418302", "name": "Commented-code block (5 lines) in design_handoff_monochrome_canvas 2/theme.js:7", "shortDescription": {"text": "Commented-code block (5 lines) in design_handoff_monochrome_canvas 2/theme.js: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-7069a39ef516d9d2", "name": "Commented-code block (5 lines) in design_handoff_monochrome_canvas 2/prototype/screens.jsx:113", "shortDescription": {"text": "Commented-code block (5 lines) in design_handoff_monochrome_canvas 2/prototype/screens.jsx:113"}, "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-9801bd28cdfd176a", "name": "Commented-code block (6 lines) in design_handoff_monochrome_canvas 2/prototype/design-canvas.jsx:2", "shortDescription": {"text": "Commented-code block (6 lines) in design_handoff_monochrome_canvas 2/prototype/design-canvas.jsx:2"}, "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-20f8883dab77ec33", "name": "`fetch()` without try/.catch or AbortSignal \u2014 design_handoff_monochrome_canvas 2/prototype/design-canvas.jsx:63", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 design_handoff_monochrome_canvas 2/prototype/design-canvas.jsx:63"}, "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-e67ea67eecd107c9", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/findMissingAssist.mjs:6", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/findMissingAssist.mjs:6"}, "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-cef073b4c4af8a81", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/regenerateEvents18_15.mjs:16", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/regenerateEvents18_15.mjs:16"}, "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-93bc5a87d0af8e7d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/backfillPlayerGames.mjs:24", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/backfillPlayerGames.mjs:24"}, "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-613b32dd47471f3f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/verifyImport2.mjs:6", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/verifyImport2.mjs:6"}, "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-112aee546fa77e69", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/checkPgColumns.mjs:5", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/checkPgColumns.mjs:5"}, "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-a4591a75c2de77de", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/verifyImport.mjs:13", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/verifyImport.mjs:13"}, "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-053e97d606148408", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/verifyAll.mjs:15", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/verifyAll.mjs:15"}, "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-8a71833b91204e81", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/reimportAllPointLogs.mjs:18", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/reimportAllPointLogs.mjs:18"}, "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-5e45d98f15780064", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/inspectMatchLog.mjs:16", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/inspectMatchLog.mjs:16"}, "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-5d2534d416874b3c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/diffBackfill.mjs:7", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/diffBackfill.mjs:7"}, "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-162612198057fcbc", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/backfillMatchLog.mjs:236", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/backfillMatchLog.mjs:236"}, "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-a76333daeb7ce458", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/splitJan15.mjs:10", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/splitJan15.mjs:10"}, "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-3e45afdb19d4c81e", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/comparePlayer.mjs:9", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/comparePlayer.mjs:9"}, "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-e7d4a6666627956c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/inspectDate.mjs:9", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/inspectDate.mjs:9"}, "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-7aeb524ccaf30e0f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/compareDates.mjs:15", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/compareDates.mjs:15"}, "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-0a105c98a64061f2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/inspectSheets.mjs:17", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/inspectSheets.mjs:17"}, "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-a3dbe600deb23578", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/classifyDates.mjs:7", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/classifyDates.mjs:7"}, "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-29519c1ff02d7ced", "name": "Commented-code block (5 lines) in scripts/migrate/buildJan815.mjs:25", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/migrate/buildJan815.mjs:25"}, "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-4c4c3a8b1e899c2a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/buildJan815.mjs:21", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/buildJan815.mjs:21"}, "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-03d57c5141246baa", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/inspectMissing.mjs:7", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/inspectMissing.mjs:7"}, "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-04cc8898adbea3b3", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/diffSheet27.mjs:6", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/diffSheet27.mjs:6"}, "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-3988e7e44f5d2d54", "name": "Commented-code block (35 lines) in apps-script/Code.js:4", "shortDescription": {"text": "Commented-code block (35 lines) in apps-script/Code.js: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-fb189235feb7b645", "name": "Legacy-named symbol `settings_legacy_backup` in src/config/settings.js:141", "shortDescription": {"text": "Legacy-named symbol `settings_legacy_backup` in src/config/settings.js:141"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-be6d92bc710155af", "name": "Legacy-named symbol `byLegacy` in src/utils/gameRecordBuilder.js:73", "shortDescription": {"text": "Legacy-named symbol `byLegacy` in src/utils/gameRecordBuilder.js:73"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d033ba2ab430429c", "name": "Commented-code block (5 lines) in src/utils/analyticsV2/calcPersonalSynergy.js:6", "shortDescription": {"text": "Commented-code block (5 lines) in src/utils/analyticsV2/calcPersonalSynergy.js: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-7fc305ed6deee551", "name": "Commented-code block (6 lines) in src/utils/analyticsV2/calcAwards.js:1", "shortDescription": {"text": "Commented-code block (6 lines) in src/utils/analyticsV2/calcAwards.js: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-fd3d98484338993d", "name": "Commented-code block (8 lines) in src/utils/analyticsV2/parseMembers.js:1", "shortDescription": {"text": "Commented-code block (8 lines) in src/utils/analyticsV2/parseMembers.js: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-fae9d63c63b6838a", "name": "Commented-code block (5 lines) in src/utils/analyticsV2/calcGkChemistry.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in src/utils/analyticsV2/calcGkChemistry.js: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-5200d3ab4d713dd7", "name": "Commented-code block (9 lines) in src/utils/analyticsV2/calcPlayerSummary.js:4", "shortDescription": {"text": "Commented-code block (9 lines) in src/utils/analyticsV2/calcPlayerSummary.js: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-76dafe115d368333", "name": "Commented-code block (6 lines) in src/utils/analyticsV2/calcGoldenTrio.js:1", "shortDescription": {"text": "Commented-code block (6 lines) in src/utils/analyticsV2/calcGoldenTrio.js: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-c10fe3077ccec747", "name": "Commented-code block (9 lines) in src/utils/analyticsV2/calcRoundSlope.js:3", "shortDescription": {"text": "Commented-code block (9 lines) in src/utils/analyticsV2/calcRoundSlope.js: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-ec201fff86f95c1f", "name": "Legacy-named symbol `PlayerAnalyticsLegacy` in src/components/dashboard/PlayerAnalyticsLegacy.jsx:247", "shortDescription": {"text": "Legacy-named symbol `PlayerAnalyticsLegacy` in src/components/dashboard/PlayerAnalyticsLegacy.jsx:247"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-917a71381cf6f378", "name": "Commented-code block (8 lines) in src/hooks/useFirebaseSync.js:7", "shortDescription": {"text": "Commented-code block (8 lines) in src/hooks/useFirebaseSync.js: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-c79dd6ef4f5e1110", "name": "Commented-code block (6 lines) in src/services/firebaseSync.js:41", "shortDescription": {"text": "Commented-code block (6 lines) in src/services/firebaseSync.js:41"}, "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-9ea8a4b95f5eb6a9", "name": "Commented-code block (5 lines) in src/services/appSync.js:22", "shortDescription": {"text": "Commented-code block (5 lines) in src/services/appSync.js: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-eb95a77968a6148d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/services/appSync.js:49", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/services/appSync.js:49"}, "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-990160b84d11ce99", "name": "Commented-code block (5 lines) in src/services/sheetService.js:190", "shortDescription": {"text": "Commented-code block (5 lines) in src/services/sheetService.js:190"}, "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-0414856bf5f2b526", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/services/sheetService.js:136", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/services/sheetService.js:136"}, "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-22db6c511949f7e2", "name": "Commented-code block (7 lines) in src/services/__tests__/syncCoverage.test.js:7", "shortDescription": {"text": "Commented-code block (7 lines) in src/services/__tests__/syncCoverage.test.js: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}}]}}, "automationDetails": {"id": "repobility/23377"}, "properties": {"repository": "yssc-dev/master-fc", "repoUrl": "https://github.com/yssc-dev/master-fc", "branch": "main"}, "results": [{"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: yssc-dev/master-fc"}, "properties": {"repobilityId": 405850, "scanner": "foundry_dataset", "fingerprint": "193d3544a0639cea6ebbeb25847e0c60ab96f555f6605142ef9d6afbd4a31429", "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": 1, "ui_or_frontend": 2, "ui_workflow_gap": 1, "partial blueprint fit": 3, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 3, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 31, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 2, "thread_has_comment_chain": 1, "comment_chain_links_commit": 2, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 22, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 1, "pr_file": 2, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "yssc-dev/master-fc#3", "issue_number": "3", "quality_tiers": {"high_confidence": 3, "assumption_check": 3}, "repo_full_name": "yssc-dev/master-fc", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-6f34bda770a9fa51", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"ui_or_frontend": 8}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_high_confidence_link\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#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: yssc-dev/master-fc\nThread: yssc-dev/master-fc#3\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: yssc-dev/master-fc#3\nRepo: yssc-dev/master-fc\nIssue/PR number: 3\nGraph consistency label: supported_by_high_confidence_link\nNodes: 22\nEdges: 31\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'pr_file': 2, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_touches_file': 2, 'comment_chain_links_commit': 2, 'comment_chain_touches_file': 2, 'issue_chain_touches_file': 2, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'claimed_resolved_unverified': 3, 'blueprint_human_gap_alignment': 3, 'partial blueprint fit': 3, 'ui_or_frontend': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'ui_workflow': 1, 'bug_fix': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "graph-query-motif_query-ff272abbc92db093", "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": "yssc-dev/master-fc", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: yssc-dev/master-fc"}, "properties": {"repobilityId": 405849, "scanner": "foundry_dataset", "fingerprint": "f361082ffa638dbcc4998f3eb4b6353ad3cf53a58399112d7046da4364186f21", "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": 4, "test_ci_gap": 1, "ui_workflow": 1, "partial blueprint fit": 3, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 3, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 28, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 23, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "yssc-dev/master-fc#1", "issue_number": "1", "quality_tiers": {"high_confidence": 3, "assumption_check": 3}, "repo_full_name": "yssc-dev/master-fc", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-aeb2a77cba279bcd", "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: yssc-dev/master-fc\nThread: yssc-dev/master-fc#1\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#1\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: yssc-dev/master-fc#1\nRepo: yssc-dev/master-fc\nIssue/PR number: 1\nGraph consistency label: supported_by_high_confidence_link\nNodes: 23\nEdges: 28\nNode types: {'link_quality': 6, 'commit': 5, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'comment_chain_links_commit': 5, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'bug_fix': 4, 'claimed_resolved_unverified': 3, 'blueprint_human_gap_alignment': 3, 'partial blueprint fit': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'ui_workflow': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "graph-query-motif_query-1901be57b16c7b8e", "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": "yssc-dev/master-fc", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384409, "scanner": "foundry_dataset", "fingerprint": "89d70edd379347246d6eeb053dc865ee19b93913cc0772091bcecdcf087e4652", "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": "yssc-dev/master-fc#9", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "9", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.882, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-897039ed559705aa", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 3, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 3}, "linked_commit_count": 5, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#9\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\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#9\nRepo: yssc-dev/master-fc\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: 3\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-ac027cea43382b45\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/9\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/9\\nTitle: fix(futsal): \ud63c\ud569 \ubaa8\ub4dc \ubaa8\ub4e0 \ub77c\uc6b4\ub4dc \ub77c\ubca8\uc5d0 \ub204\uc801 \uce74\uc6b4\ud2b8 \uc801\uc6a9\\nBody:\\nPR #8 \ud6c4\uc18d. \ud5e4\ub354\ub9cc '\ub77c\uc6b4\ub4dc 6 / 10'\uc73c\ub85c \ud45c\uc2dc\ud558\uace0 ScheduleMatchView \ub124\ube44/\ud558\ub2e8\ubc14/\ubaa8\ub2ec R \uceec\ub7fc\uc740 \uc5ec\uc804\ud788 '\ub77c\uc6b4\ub4dc 1 / 5'\uc600\ub358 \ubb38\uc81c.\\n\\nroundDisplayOffset \ud5ec\ud37c \uc77c\uad00 \uc801\uc6a9.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-84457654a015b203\",\n    \"filename\": \"src/App.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 13,\n    \"deletions\": 4,\n    \"changes\": 17,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/eca9736626af46450608ca11b5adda28125596be/src%2FApp.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-3be7caf5620b40e4\",\n    \"filename\": \"src/components/game/ScheduleMatchView.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 2,\n    \"deletions\": 2,\n    \"changes\": 4,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/eca9736626af46450608ca11b5adda28125596be/src%2Fcomponents%2Fgame%2FScheduleMatchView.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-e03ddd136eb760ec\",\n    \"filename\": \"src/components/game/ScheduleModal.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 2,\n    \"deletions\": 2,\n    \"changes\": 4,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/eca9736626af46450608ca11b5adda28125596be/src%2Fcomponents%2Fgame%2FScheduleModal.jsx\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-1868668fb2c56e01\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-c7aabb1712396b8d", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384408, "scanner": "foundry_dataset", "fingerprint": "42536b54e31acc731ae40b31d316bd0a28058048bc2a125ff484745c7b8ca318", "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": "yssc-dev/master-fc#8", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "8", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.912, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-f10279e7ccd9524a", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 3, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 3}, "linked_commit_count": 5, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#8\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\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#8\nRepo: yssc-dev/master-fc\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: 3\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-88b437ba2adce502\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/8\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/8\\nTitle: fix(futsal): \ud63c\ud569 \ubaa8\ub4dc(\uc790\uc720+\uc790\ub3d9) \ub77c\uc6b4\ub4dc \uce74\uc6b4\ud130 + \uc790\uc720 \ub77c\uc6b4\ub4dc \uc9c1\uc811 \uc811\uadfc\\nBody:\\n\uc0ac\uc6a9\uc790 \ud53c\ub4dc\ubc31: \uc790\uc720\ub300\uc9c4 5R \uc9c4\ud589 \ud6c4 \uc790\ub3d9 schedule 5R \ucd94\uac00\ud588\ub354\ub2c8\\n\\n1. \ud5e4\ub354\uac00 '\ub77c\uc6b4\ub4dc 1 / 5'\ub85c \ud45c\uc2dc (\uc2e4\uc81c 6\ub77c\uc6b4\ub4dc \uc9f8\uc778\ub370)\\n2. ScheduleView \uc9c4\uc785 \ud6c4 F1~F5\ub85c \ub3cc\uc544\uac00 \uace8/\uc5b4\uc2dc \uc218\uc815 \ubd88\uac00\\n3. \ub77c\uc6b4\ub4dc 1\ub85c \ud45c\uc2dc\ub418\uc5b4 \ub85c\uadf8 \ub36e\uc5b4\uc4f0\uae30 \uc6b0\ub824\\n\\n\ub2f5:\\n- \ub370\uc774\ud130 \uce21\uba74: F{N}\uc640 R{N}\uc740 matchId prefix\uac00 \ub2ec\ub77c \ucda9\ub3cc 0. UI \ud45c\uc2dc \ubb38\uc81c\ub9cc.\\n- \uce74\uc6b4\ud130: free + schedule \ub204\uc801 \uce74\uc6b4\ud2b8\ub85c \ud45c\uc2dc ('\ub77c\uc6b4\ub4dc 6 / 10')\\n- \uc811\uadfc: ScheduleModal\uc758 F-row \ud074\ub9ad \u2192 \ud574\ub2f9 \ub9e4\uce58\ub97c FreeMatchView forced \ubaa8\ub4dc\ub85c \uc989\uc2dc \uc5f4\uae30 \u2192 '\u2190 \uc2a4\ucf00\uc904\ub85c \ub3cc\uc544\uac00\uae30' \ubc84\ud2bc\uc73c\ub85c \ubcf5\uadc0\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-b31d882f207847e3\",\n    \"filename\": \"src/App.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 42,\n    \"deletions\": 5,\n    \"changes\": 47,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/c9d058380986bca7f58dfec11588b05e26e6ffb5/src%2FApp.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-9b6a0f2225077251\",\n    \"filename\": \"src/components/game/FreeMatchView.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 23,\n    \"deletions\": 6,\n    \"changes\": 29,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/c9d058380986bca7f58dfec11588b05e26e6ffb5/src%2Fcomponents%2Fgame%2FFreeMatchView.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-89af6ed7035eca27\",\n    \"filename\": \"src/components/game/ScheduleModal.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 5,\n    \"deletions\": 2,\n    \"changes\": 7,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/c9d058380986bca7f58dfec11588b05e26e6ffb5/src%2Fcomponents%2Fgame%2FScheduleModal.jsx\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-34c9fed33768dde2\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: s\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-5229f2f95f31c9ed", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384407, "scanner": "foundry_dataset", "fingerprint": "f382447644e999c9985dfc95a1506f9264d6888951d8aebc3cf4df9ffa065047", "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": "yssc-dev/master-fc#7", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "7", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-eb51a4e3c8f4e71c", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "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": 3, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#7\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#7\nRepo: yssc-dev/master-fc\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 1\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-f3339f8092690a28\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/7\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/7\\nTitle: feat(futsal): \uc790\uc720\ud3b8\uc131\uc5d0\uc11c \uc120\uc218 \ub2e4\uc911 \uc120\ud0dd + \uc77c\uad04 \ubc30\uc815\\nBody:\\n\uc0ac\uc6a9\uc790 \ud53c\ub4dc\ubc31: \uc790\uc720\ud3b8\uc131 \ubaa8\ub4dc\uc5d0\uc11c \uc120\uc218 \ud55c \uba85\uc529 \ud300\uc5d0 \ub123\ub294 \uac8c \ube44\ud6a8\uc728\uc801. \uc5ec\ub7ec \uba85 \ub3d9\uc2dc \uc120\ud0dd \ud6c4 \ud55c \ubc88\uc5d0 \ubc30\uc815 \uc694\uccad.\\n\\n## \ubcc0\uacbd\\n- `selectedPoolPlayer` (\ub2e8\uc77c) \u2192 `selectedPoolPlayers` (\ubc30\uc5f4)\\n- \ubbf8\ubc30\uc815 \uc120\uc218 \ud0ed\ud558\uba74 \ud1a0\uae00 (\uc120\ud0dd/\ud574\uc81c)\\n- \ud55c \ud300\uc758 '+ \ucd94\uac00' \ud074\ub9ad \u2192 \uc120\ud0dd\ub41c \ubaa8\ub4e0 \uc120\uc218 \uc77c\uad04 \ubc30\uc815 \ud6c4 \uc120\ud0dd \ud574\uc81c\\n- \ud5e4\ub354\uc5d0 'N\uba85 \uc120\ud0dd\ub428' + '\uc120\ud0dd \ud574\uc81c' \ubc84\ud2bc\\n- '+ \ucd94\uac00 (N)' \uce74\uc6b4\ud2b8 \ud45c\uc2dc\\n\\n## \uc548\uc804\uc131\\n- batch dispatch\ub85c closure stale \ubb38\uc81c \ud68c\ud53c\\n- \uc120\uc218\uac00 \ubbf8\ubc30\uc815 \ud480\uc5d0\uc11c \uc81c\uac70(\ubd88\ucc38 \ucc98\ub9ac)\ub418\uba74 \uc120\ud0dd \ubc30\uc5f4\uc5d0\uc11c\ub3c4 \uc790\ub3d9 \uc81c\uac70\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-235b90fe222a9c75\",\n    \"filename\": \"src/App.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 35,\n    \"deletions\": 19,\n    \"changes\": 54,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/f49d7ac0c08fc3d88a90d53d7f5f4d13173610c5/src%2FApp.jsx\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-b0854c79c2c136fe\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 6, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"designs\": 1, \"docs\": 6, \"schemas\": 1}\nHelicopter views: {\"schemas\": 2}\nBundle labels: {\"source_backed_fake_real_verification_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-454a42095f1ae354", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384406, "scanner": "foundry_dataset", "fingerprint": "9b01c9911c14a92114e31740bdf5c2d53c19f46c2a862d80883c79e9b5099031", "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": "yssc-dev/master-fc#6", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "6", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.847, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-d413fb0cab2c7d37", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 3, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 3}, "linked_commit_count": 5, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#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_high_confidence\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#6\nRepo: yssc-dev/master-fc\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: 3\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-13283718b41d068c\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/6\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/6\\nTitle: fix(futsal): \uc790\uc720\ub300\uc9c4 \ub2e8\uc704 \uba85\uce6d\uc744 '\uacbd\uae30/\ub9e4\uce58'\uc5d0\uc11c '\ub77c\uc6b4\ub4dc'\ub85c \ud1b5\uc77c\\nBody:\\n\uc0ac\uc6a9\uc790 \ud53c\ub4dc\ubc31: \uae30\uc874 \ub300\uc9c4\ud45c \ubaa8\ub4dc\ub294 '\ub77c\uc6b4\ub4dc', \uc790\uc720\ub300\uc9c4\uc740 '\uacbd\uae30/\ub9e4\uce58' \u2014 \uc6a9\uc5b4 \ud1b5\uc77c \uc694\uccad.\\n\\n\ub300\uc9c4\ud45c \ubaa8\ub4dc\uc5d0 \ub9de\ucdb0 '\ub77c\uc6b4\ub4dc'\ub85c \ud1b5\uc77c.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-532c714d468bdef1\",\n    \"filename\": \"src/App.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 1,\n    \"deletions\": 1,\n    \"changes\": 2,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/e806cc858d8b3cc1a2002c69585046c192f1caa2/src%2FApp.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-02554d5388fc1598\",\n    \"filename\": \"src/components/game/FreeMatchView.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 4,\n    \"deletions\": 4,\n    \"changes\": 8,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/e806cc858d8b3cc1a2002c69585046c192f1caa2/src%2Fcomponents%2Fgame%2FFreeMatchView.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-116804ad4e6cf8a8\",\n    \"filename\": \"src/components/game/ScheduleModal.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 1,\n    \"deletions\": 1,\n    \"changes\": 2,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/e806cc858d8b3cc1a2002c69585046c192f1caa2/src%2Fcomponents%2Fgame%2FScheduleModal.jsx\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-3b1b4b178d8737c7\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 6, \"artifact_supports_design_schema_api\": 1, \"\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-cb00c346122b9f92", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384405, "scanner": "foundry_dataset", "fingerprint": "dd6e4985eab9120a37edc4f8568ab69e39ff589191153043d2103f38dd529833", "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": "yssc-dev/master-fc#5", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "5", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.845, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-50cacaa43741c78d", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "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": 5, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#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_high_confidence\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#5\nRepo: yssc-dev/master-fc\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: 1\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-9d30b6b794d9cc1a\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/5\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/5\\nTitle: fix(futsal): \uc790\uc720 \ub9e4\uce58 \uacfc\uac70 \ubcf4\uae30 UI\ub97c \ub300\uc9c4\ud45c \ubaa8\ub4dc\uc640 \uc77c\uad00\ub418\uac8c\\nBody:\\n\uc0ac\uc6a9\uc790 \ud53c\ub4dc\ubc31: \ub300\uc9c4\ud45c \ubaa8\ub4dc\ub294 \ub77c\uc6b4\ub4dc \ub124\ube44(\uc0c1\ub2e8) + \ud655\uc815\ucde8\uc18c(\ud558\ub2e8 \uace0\uc815 \ubc14)\uc778\ub370, \uc790\uc720 \ub9e4\uce58 \uacfc\uac70 \ubcf4\uae30\ub294 \ub458\uc774 \uc778\ub77c\uc778\uc73c\ub85c \ubd99\uc5b4 \ud328\ud134\uc774 \ub2e4\ub984.\\n\\n## \ubcc0\uacbd\\n- \ub9e4\uce58 \ub124\ube44\uac8c\uc774\uc158\uc744 ScheduleMatchView\uc640 \ub3d9\uc77c\ud55c \uc6d0\ud615 \u25c0/\u25b6 + \uc911\uc559 \ud14d\uc2a4\ud2b8(2\ub2e8: 'N\uacbd\uae30 / total' + \uc0c1\ud0dc \ubc30\uc9c0) + space-between \ub808\uc774\uc544\uc6c3\\n- \ud655\uc815\ucde8\uc18c/\ub9e4\uce58\ud655\uc815 \ubc84\ud2bc\uc744 \ud558\ub2e8 \uace0\uc815 \ubc14\ub85c \uc774\ub3d9 \u2014 \ub300\uc9c4\ud45c \ubaa8\ub4dc\uc758 '\ub77c\uc6b4\ub4dc N \uc885\ub8cc\ub428 + \ud655\uc815\ucde8\uc18c'\uc640 \uc2dc\uac01/\uad6c\uc870 \ub3d9\uc77c\\n\\n\uc774\uc81c \ub450 \ubaa8\ub4dc\uc758 \uacfc\uac70 \ub370\uc774\ud130 \uc218\uc815 UX\uac00 \uc644\uc804\ud788 \ud1b5\uc77c\ub428.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-e9a41673ab76df97\",\n    \"filename\": \"src/components/game/FreeMatchView.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 51,\n    \"deletions\": 22,\n    \"changes\": 73,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/6f765d08afa52484352481980dd3539586c94eb4/src%2Fcomponents%2Fgame%2FFreeMatchView.jsx\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-dd62cab431a57715\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 6, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"designs\": 1, \"docs\": 6, \"schemas\": 1}\nHelicopter views: {\"schemas\": 2}\nBundle labels: {\"source_backed_fake_real_verification_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-5a7e094831b50186", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384404, "scanner": "foundry_dataset", "fingerprint": "468d8723cc7f464f2d86d60960eb3b5a91c98ac637189bf3114f76d86723b7b0", "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": "yssc-dev/master-fc#4", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "4", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.882, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-12b5724a536e4e3a", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "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": 5, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#4\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\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#4\nRepo: yssc-dev/master-fc\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: 1\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-2cab38e120885fda\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/4\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/4\\nTitle: fix(futsal): \uc790\uc720 \ub9e4\uce58 \ud3b8\uc9d1 \ud1a0\uae00 \uc6a9\uc5b4\ub97c \ub300\uc9c4\ud45c \ubaa8\ub4dc\uc640 \uc77c\uad00\ub418\uac8c\\nBody:\\n\uc0ac\uc6a9\uc790 \ud53c\ub4dc\ubc31: \ub300\uc9c4\ud45c \ubaa8\ub4dc\ub294 '\ub77c\uc6b4\ub4dc \ud655\uc815/\ud655\uc815\ucde8\uc18c'\uc778\ub370 \uc790\uc720 \ub9e4\uce58 \uacfc\uac70 \ubcf4\uae30\ub294 '\ud3b8\uc9d1/\ud3b8\uc9d1 \uc644\ub8cc'\ub85c \ub2e4\ub978 \uc6a9\uc5b4 \u2014 \uc77c\uad00\uc131 \uc5c6\uc74c.\\n\\n- '\u270e \ud3b8\uc9d1' \u2192 '\ud655\uc815\ucde8\uc18c'\\n- '\u2713 \ud3b8\uc9d1 \uc644\ub8cc' \u2192 '\ub9e4\uce58 \ud655\uc815'\\n- '\ud3b8\uc9d1\uc911' \u2192 '\ud655\uc815\ucde8\uc18c\ub428'\\n\\nCourtRecorder\uc758 readOnly \uc54c\ub9bc \uba54\uc2dc\uc9c0(\\\"\ud655\uc815\ub41c \ub77c\uc6b4\ub4dc\uc785\ub2c8\ub2e4. \uc218\uc815\ud558\ub824\uba74 \ud655\uc815\ucde8\uc18c\ub97c \uba3c\uc800\\\")\uc640\ub3c4 \uc815\ud569.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-7315f4410c1db671\",\n    \"filename\": \"src/components/game/FreeMatchView.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 3,\n    \"changes\": 6,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/119d9d2ca4a2f8c07d5591a59b149f88755fa895/src%2Fcomponents%2Fgame%2FFreeMatchView.jsx\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-1ae39a01c7156a13\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 6, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"designs\": 1, \"docs\": 6, \"schemas\": 1}\nHelicopter views: {\"schemas\": 2}\nBundle labels: {\"source_backed_fake_real_verification_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-6d07d454405c1216", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384403, "scanner": "foundry_dataset", "fingerprint": "903ee7137320d400a8163ee34cdae88e3699b6156d66fec12690feb443687df4", "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": "yssc-dev/master-fc#3", "human_labels": ["ui_or_frontend", "ui_workflow_gap"], "issue_number": "3", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.842, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-e2480f04406fc6e7", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 2}, "linked_commit_count": 2, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#3\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\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#3\nRepo: yssc-dev/master-fc\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 2\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'ui_workflow_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-2b59064395136dd4\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"ui_workflow_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/3\",\n    \"text\": \"GitHub feedback: ui_workflow_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/3\\nTitle: feat(futsal): \uc790\uc720 \ub9e4\uce58 \ud3b8\uc9d1 \ud1a0\uae00 + \ub300\uc9c4\ud45c \ubaa8\ub2ec\uc5d0 \uc790\uc720 \ub9e4\uce58 \uc774\ub825 \ud45c\uc2dc\\nBody:\\n## \uc774\uc288\\n\\n\ubc30\ud3ec\ub41c \uade0\ub4f1 \uc790\ub3d9 \uc2a4\ucf00\uc904 \uc0ac\uc6a9 \uc911 \ubc1c\uacac\ub41c 2\uac00\uc9c0 UX \uc774\uc288.\\n\\n### #1. \uacfc\uac70 \uc790\uc720 \ub9e4\uce58\ub97c \ubcf4\ub7ec \ub4e4\uc5b4\uac14\ub294\ub370 \uace8 \uc774\ubca4\ud2b8\uac00 \ubc14\ub85c \uc785\ub825\ub428\\n`FreeMatchView`\ub294 \\\"\uacfc\uac70 \ub9e4\uce58\ub3c4 \uc989\uc2dc \ud3b8\uc9d1 \uac00\ub2a5\\\" \uc124\uacc4\uc600\uc9c0\ub9cc, \ub2e8\uc21c \uc870\ud68c \uc758\ub3c4\ub85c \ub4e4\uc5b4\uac04 \uc0ac\uc6a9\uc790\uac00 \uc2e4\uc218\ub85c \uace8 \ucd94\uac00\ud558\ub294 \uc704\ud5d8. \ub300\uc9c4\ud45c \ubaa8\ub4dc\uc758 \\\"\ud655\uc815/\ud655\uc815\ucde8\uc18c\\\" \ud328\ud134\uacfc UX\uac00 \ube44\ub300\uce6d.\\n\\n### #2. \ub300\uc9c4\ud45c \ubaa8\ub2ec\uc5d0 \uc790\uc720 \ub9e4\uce58 \uc774\ub825\uc774 \uc548 \ubcf4\uc784\\n\uc2a4\ud399 v1\uc5d0\uc11c\ub294 \\\"\uc790\uc720 \ub9e4\uce58 N\uac1c \ubcc4\ub3c4 \uc9c4\ud589\\\" \uc548\ub0b4 \ub77c\uc778\ub9cc \ud45c\uc2dc\ud558\uace0 \ud45c\ub294 v2\ub85c \ubbf8\ub918\uc73c\ub098, \uc2e4 \uc0ac\uc6a9 \uc2dc \ub9e4\uce58 \uae30\ub85d\uc744 \ube60\ub974\uac8c \ud6d1\uc5b4\ubcf4\uace0 \uc2f6\ub2e4\ub294 \uc694\uad6c.\\n\\n## \ubcc0\uacbd\\n\\n**`src/components/game/FreeMatchView.jsx`**:\\n- `pastEditMode` state \ucd94\uac00 (\uae30\ubcf8 false \u2192 readOnly)\\n- \uacfc\uac70 \ub9e4\uce58 \ud5e4\ub354 \uc544\ub798 '\u270e \ud3b8\uc9d1' / '\u2713 \ud3b8\uc9d1 \uc644\ub8cc' \ud1a0\uae00 \ubc84\ud2bc\\n- \ub2e4\ub978 \ub9e4\uce58 \uc774\ub3d9 \uc2dc \ud3b8\uc9d1 \ubaa8\ub4dc \uc790\ub3d9 \ud574\uc81c (lastViewingIdx \ucd94\uc801)\\n- `readOnly={!pastEditMode}` CourtRecorder \uc804\ub2ec\\n\\n**`src/components/game/ScheduleModal.jsx`**:\\n- \uae30\uc874 \\\"\uc790\uc720 \ub9e4\uce58 N\uac1c \ubcc4\ub3c4 \uc9c4\ud589\\\" \ub77c\uc778\uc744 \uc2e4\uc81c \ud14c\uc774\ube14\ub85c \ud655\uc7a5\\n- F1, F2 ... \ud589\uc73c\ub85c \ub9e4\uce58 \uc815\ubcf4(\ud300, \uc810\uc218, \uc885\ub8cc \ubc30\uc9c0) \ud45c\uc2dc\\n- \uc790\ub3d9 \ub77c\uc6b4\ub4dc \ud45c\uac00 \uc788\uc744 \uacbd\uc6b0 \uadf8 \uc704 \ubcc4\ub3c4 \uc139\uc158\\n\\n## \uac80\uc99d\\n\\n- 339/339 tests pass\\n- Build clean\\n- \ub77c\uc774\ube0c \ub9e4\uce58(\ud604\uc7ac \uc9c4\ud589 \uc911) \ub3d9\uc791\uc740 \ubcc0\uacbd \uc5c6\uc74c \u2014 \uacfc\uac70 \ub9e4\uce58 \ubcf4\uae30\uc5d0\ub9cc \uc601\ud5a5\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-956384fb971e5307\",\n    \"filename\": \"src/components/game/FreeMatchView.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 26,\n    \"deletions\": 3,\n    \"changes\": 29,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/844aee4bfd8e17cd808f21d8c1fc9382f2596bb4/src%2Fcomponents%2Fgame%2FFreeMatchView.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-8fbdd5dfd4c439b5\",\n    \"filename\": \"src/components/game/ScheduleModal.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 49,\n    \"deletions\": 3,\n    \"changes\": 52,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/844aee4bfd8e17cd808f21d8c1fc9382f2596bb4/src%2Fcomponents%2Fgame%2FScheduleModal.jsx\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-e6a03b730a4f\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-3013dd9f2ef475b0", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384402, "scanner": "foundry_dataset", "fingerprint": "274eaabf81faf8795214476d7f12dc883a8357c9491f0bbb6ac6007e4a1464de", "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": "yssc-dev/master-fc#20", "human_labels": ["human_feedback_general", "ui_or_frontend"], "issue_number": "20", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.882, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-8e1dcb7b4d41f26a", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "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": 2, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#20\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\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\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#20\nRepo: yssc-dev/master-fc\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 2\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 1\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-717d156333306368\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/20\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/20\\nTitle: fix(futsal): merc add no-op for same teamIdx\\nBody:\\n\ud14c\uc2a4\ud2b8 \ud68c\uadc0 \uc218\uc815.\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-c7773e35cac4b373\",\n    \"filename\": \"src/hooks/useGameReducer.js\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 0,\n    \"changes\": 3,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/04057bcad2490b6d316ab68910d12437a794d498/src%2Fhooks%2FuseGameReducer.js\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-fe4f93a1f1c1c1ac\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 6, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"designs\": 1, \"docs\": 6, \"schemas\": 1}\nHelicopter views: {\"schemas\": 2}\nBundle labels: {\"source_backed_fake_real_verification_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-785f19c272092453", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384401, "scanner": "foundry_dataset", "fingerprint": "d8347cedf7dbe806f4019c89cb7119e451d8152e37cdadd46c912494a203c739", "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": "yssc-dev/master-fc#2", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "2", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.842, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-4acc4bcd5806cc44", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "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": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#2\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\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#2\nRepo: yssc-dev/master-fc\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 4\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 1\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-2af9c4697c2279f7\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/2\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/2\\nTitle: fix(futsal): \ub300\uc9c4 \uc120\ud0dd \ubaa8\ub2ec\uc5d0\uc11c \uc120\ud0dd\ud55c \ud300 \uc2dc\uac01 \ud53c\ub4dc\ubc31 \ucd94\uac00\\nBody:\\n## \uc774\uc288\\n`FreeMatchView` \ub300\uc9c4 \uc120\ud0dd \ubaa8\ub2ec\uc5d0\uc11c \ud300 \ubc84\ud2bc\uc744 \ub20c\ub7ec\ub3c4 \uc120\ud0dd \uc0c1\ud0dc\uac00 \uc2dc\uac01\uc801\uc73c\ub85c \ud45c\uc2dc\ub418\uc9c0 \uc54a\uc74c.\\n\\n## \uc6d0\uc778\\n`src/styles/theme.js:268`\uc758 `matchBtn(color)` \ud568\uc218\uac00 `color` \uc778\uc790\ub97c \ubc1b\uc9c0\ub9cc \uc2a4\ud0c0\uc77c\uc5d0 \uc0ac\uc6a9\ud558\uc9c0 \uc54a\uc74c. \ud638\ucd9c\ubd80(`FreeMatchView.jsx:156, 166`)\ub294 \uc120\ud0dd \uc2dc `TEAM_COLORS[teamColorIndices[idx]]`\ub97c \uc804\ub2ec\ud588\uc9c0\ub9cc \ubb34\uc2dc\ub428.\\n\\n## \uc218\uc815\\n`color` \uc778\uc790\ub97c \ubc1b\uc73c\uba74:\\n- \ubc30\uacbd: `${color.bg}33` (33 \uc54c\ud30c = 20% opacity \uc0c9\uc870)\\n- \ubcf4\ub354: `2px solid ${color.bg}`\\n- \ud3f0\ud2b8 \uad75\uae30: 700\\n\\n\ube44\uc120\ud0dd \uc0c1\ud0dc\ub294 \ub3d9\uc77c\ud55c \ub450\uaed8\uc758 `2px solid transparent` \ubcf4\ub354\ub85c \ub808\uc774\uc544\uc6c3 \uc810\ud504 \ubc29\uc9c0.\\n\\n## \uc601\ud5a5 \ubc94\uc704\\n`matchBtn` \uc0ac\uc6a9\ucc98: FreeMatchView\uc758 \ud648/\uc6d0\uc815\ud300 \uc120\ud0dd \ubc84\ud2bc 2\uacf3\ub9cc. \ub2e4\ub978 \ucef4\ud3ec\ub10c\ud2b8 \uc601\ud5a5 \uc5c6\uc74c.\\n\\n## \uac80\uc99d\\n- 339/339 tests pass\\n- Build clean\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-1ab53128848c4ced\",\n    \"filename\": \"src/styles/theme.js\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 4,\n    \"deletions\": 3,\n    \"changes\": 7,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/dbc8b96d3fa38ebe3b9465ef4d2829c751fc47c4/src%2Fstyles%2Ftheme.js\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-b63846efa28c013e\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 6, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families:\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-d54ebf07d8e60fc9", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384400, "scanner": "foundry_dataset", "fingerprint": "c535c6b2942d98b2d29d682b5284005495166d8a5c82202e4972ab47b44df931", "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": "yssc-dev/master-fc#19", "human_labels": ["agent_instruction_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "19", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-521fdeb13e9ad978", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 3, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 1, "ui_or_frontend": 2}, "linked_commit_count": 2, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#19\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#19\nRepo: yssc-dev/master-fc\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 2\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 3\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 2, 'test_or_ci': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-7b97eee8b4bef02b\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/19\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/19\\nTitle: fix(futsal): \uc6a9\ubcd1 \ucd94\uac00 stale entry \uc815\ub9ac + \uc9c4\ub2e8 \ub85c\uadf8 \uc81c\uac70\\nBody:\\n\uc0ac\uc6a9\uc790 \uc9c4\ub2e8 \ub85c\uadf8 \uacb0\uacfc: EDIT_PAST_MERC_ADD\uac00 'already merc' \uac70\ubd80 \u2192 \uc2e4\uc740 stale teamIdx\ub85c mercenaries\uc5d0 \uc794\ub958. UI\uc5d4 \uc548 \ubcf4\uc774\uc9c0\ub9cc reducer\ub294 \uac70\ubd80\ud558\ub294 \uc0c1\ud0dc.\\n\\n\uc218\uc815: \ucd94\uac00 \uc2dc \uac19\uc740 player\uc758 \uae30\uc874 entry\ub97c \uc815\ub9ac\ud558\uace0 \uc0c8 entry\ub85c \uad50\uccb4. stale \uc790\ub3d9 \uccad\uc18c. \ud14c\uc2a4\ud2b8 4\uac74.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-6a80dc2535f74a4d\",\n    \"filename\": \"src/components/game/FreeMatchView.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 0,\n    \"deletions\": 2,\n    \"changes\": 2,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/786821b2d572783a0ec8669f8b66a15ec60abb6d/src%2Fcomponents%2Fgame%2FFreeMatchView.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-9bc3ffbc627423dd\",\n    \"filename\": \"src/hooks/__tests__/useGameReducer.mercStale.test.js\",\n    \"label\": \"test_or_ci\",\n    \"status\": \"added\",\n    \"additions\": 82,\n    \"deletions\": 0,\n    \"changes\": 82,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/786821b2d572783a0ec8669f8b66a15ec60abb6d/src%2Fhooks%2F__tests__%2FuseGameReducer.mercStale.test.js\"\n  },\n  {\n    \"id\": \"github-pr-file-file-ad3ef7d4956057f2\",\n    \"filename\": \"src/hooks/useGameReducer.js\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 6,\n    \"deletions\": 16,\n    \"changes\": 22,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/786821b2d572783a0ec8669f8b66a15ec60abb6d/src%2Fhooks%2FuseGameReducer.js\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-4934635b094ea20f\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-1079343d6dea335f", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384399, "scanner": "foundry_dataset", "fingerprint": "cd4750a9d88112e836b39ef4e44dcd429c4e5c0c9d4b06ab52086c8138dc9d31", "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": "yssc-dev/master-fc#18", "human_labels": ["human_feedback_general", "ui_or_frontend"], "issue_number": "18", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.837, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-1ff7e14a66c9b4fd", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 2}, "linked_commit_count": 3, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#18\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\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\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#18\nRepo: yssc-dev/master-fc\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {'ui_or_frontend': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-abecbd6c64241a44\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/18\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/18\\nTitle: debug(futsal): EDIT_PAST_MERC_ADD diagnostic\\nBody:\\n\uc784\uc2dc diagnostic. \uac80\uc99d \ud6c4 \uc989\uc2dc \uc81c\uac70.\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-55631620d48c6bbb\",\n    \"filename\": \"src/components/game/FreeMatchView.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 2,\n    \"deletions\": 0,\n    \"changes\": 2,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/97ec2a5692428c8a9cf3e03987b1bd64b7f73e7d/src%2Fcomponents%2Fgame%2FFreeMatchView.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-e413b2f1878179f3\",\n    \"filename\": \"src/hooks/useGameReducer.js\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 14,\n    \"deletions\": 3,\n    \"changes\": 17,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/97ec2a5692428c8a9cf3e03987b1bd64b7f73e7d/src%2Fhooks%2FuseGameReducer.js\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-c28dfdc6715973ef\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 6, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"designs\": 1, \"docs\": 6, \"schemas\": 1}\nHelicopter views: {\"schemas\": 2}\nBundle labels: {\"source_backed_fake_real_verification_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-a04f3542a52a7afb", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384398, "scanner": "foundry_dataset", "fingerprint": "a5f65bd2e464cada7663bb5c1e572b8a687eedbcc8d69782bb4fd24e68ebf8b9", "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": "yssc-dev/master-fc#17", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "17", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.866, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-162b8fa7d7124d73", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "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": 5, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#17\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\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#17\nRepo: yssc-dev/master-fc\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: 1\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-3bb1dcb4b470c82b\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/17\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/17\\nTitle: fix(futsal): \uacfc\uac70 R\ub77c\uc6b4\ub4dc\uc758 A/B\uad6c\uc7a5 \ub3d9\uc2dc \ud45c\uc2dc\\nBody:\\nPR #16 \ud6c4\uc18d. ScheduleMatchView\ucc98\ub7fc \uac19\uc740 \ub77c\uc6b4\ub4dc\uc758 \ub450 \ub9e4\uce58\ub97c \uc704\uc544\ub798 \uc2a4\ud0dd\uc73c\ub85c \ub3d9\uc2dc \ud45c\uc2dc. \ub124\ube44\uac8c\uc774\uc158\uc740 \ub77c\uc6b4\ub4dc \ub2e8\uc704\ub85c \ubb36\uc784.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-85b5b80ef994c54e\",\n    \"filename\": \"src/components/game/FreeMatchView.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 125,\n    \"deletions\": 72,\n    \"changes\": 197,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/662b0936e749fe10efa51d76ae5e7852a81ecf76/src%2Fcomponents%2Fgame%2FFreeMatchView.jsx\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-b936a6c898f48de6\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 6, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"designs\": 1, \"docs\": 6, \"schemas\": 1}\nHelicopter views: {\"schemas\": 2}\nBundle labels: {\"source_backed_fake_real_verification_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-b2fd7db339a5c9dd", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384397, "scanner": "foundry_dataset", "fingerprint": "e4be58ac1f61f293eb019ac2a46bc65139cad7e3bd7ba17f21430afb636bc8f8", "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": "yssc-dev/master-fc#16", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "16", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.895, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-13bdaf79bda6f1ee", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 2}, "linked_commit_count": 5, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#16\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\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#16\nRepo: yssc-dev/master-fc\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: 2\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-37672a788326622f\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/16\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/16\\nTitle: fix(futsal): FreeMatchView \uacfc\uac70 \ub77c\uc6b4\ub4dc \ub77c\ubca8\uc744 schedule \uad6c\uc870\ub85c \ud45c\uc2dc\\nBody:\\n\uc0ac\uc6a9\uc790 \ub370\uc774\ud130(F1~F5 + R6~R10)\ub294 \uc815\uc0c1\uc774\uc5c8\uc9c0\ub9cc, schedule \uc644\ub8cc \ud6c4 FreeMatchView\ub85c \ubcf5\uadc0\ud588\uc744 \ub54c \uac19\uc740 R6\uc758 A/B \ub9e4\uce58\ub97c \uac01\uac01 \ub77c\uc6b4\ub4dc 6, \ub77c\uc6b4\ub4dc 7\ub85c \ud45c\uc2dc\ud574\uc11c \ub9c8\uc9c0\ub9c9\uc774 '\ub77c\uc6b4\ub4dc 15 / 15'\ub85c \ubcf4\uc774\ub358 \ud63c\ub780.\\n\\nmatchId \ud30c\uc2f1\uc73c\ub85c \ub77c\ubca8\uc744 '\ub77c\uc6b4\ub4dc N \u00b7 A\uad6c\uc7a5' \ud615\uc2dd\uc73c\ub85c \uc7ac\uad6c\uc131.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-318ace62cd346fd2\",\n    \"filename\": \"src/App.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 6,\n    \"deletions\": 2,\n    \"changes\": 8,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/ce5ae5edc132799b3a22485ca27ce5232f8f0549/src%2FApp.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-a92b04b78429d2df\",\n    \"filename\": \"src/components/game/FreeMatchView.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 14,\n    \"deletions\": 4,\n    \"changes\": 18,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/ce5ae5edc132799b3a22485ca27ce5232f8f0549/src%2Fcomponents%2Fgame%2FFreeMatchView.jsx\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-85e547dceaa14793\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 6, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifa\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-17d6795eaee794ca", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384396, "scanner": "foundry_dataset", "fingerprint": "a93ac05c9abf5c21f3c879b76ee50955d789518f7fa7fda07861bb2554cc0808", "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": "yssc-dev/master-fc#15", "human_labels": ["human_feedback_general", "ui_or_frontend"], "issue_number": "15", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.866, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-f91c59bd48dfeaa4", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "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": 5, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#15\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\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\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#15\nRepo: yssc-dev/master-fc\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 1\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-e19234f8a9604937\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/15\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/15\\nTitle: fix(futsal): POP_SCHEDULE_SEGMENT count<=0 \ucc98\ub9ac\\nBody:\\nPR #14\uc758 \ud14c\uc2a4\ud2b8 \uc2e4\ud328 \uc218\uc815. count=0 \uc785\ub825\uc2dc schedule \ubcc0\ud654 \uc5c6\uc74c \ubcf4\uc7a5.\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-4f728ec549c89e09\",\n    \"filename\": \"src/hooks/useGameReducer.js\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 1,\n    \"changes\": 4,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/8d95a1ae6df9c1f43680359ac762bce6919a6951/src%2Fhooks%2FuseGameReducer.js\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-97a315414cf7411c\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 6, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"designs\": 1, \"docs\": 6, \"schemas\": 1}\nHelicopter views: {\"schemas\": 2}\nBundle labels: {\"source_backed_fake_real_verification_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-f98bc39e4751d673", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384395, "scanner": "foundry_dataset", "fingerprint": "9e3228c34ae008fde439aeefb1f7a8dfc1b929a289dd0a37c265e85812801671", "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": "yssc-dev/master-fc#14", "human_labels": ["agent_instruction_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "14", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-e0d8c6ff5574353c", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 5, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 1, "ui_or_frontend": 4}, "linked_commit_count": 5, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#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_high_confidence\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#14\nRepo: yssc-dev/master-fc\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: 5\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 4, 'test_or_ci': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-2b7fcbb64c32d10f\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/14\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/14\\nTitle: fix(futsal): \uc790\ub3d9\uc124\uc815 \ub354\ube14\ud074\ub9ad \ubc29\uc9c0 + \ub9c8\uc9c0\ub9c9 N\ub77c\uc6b4\ub4dc \uc81c\uac70\\nBody:\\n\uc0ac\uc6a9\uc790\uac00 \uc790\ub3d9\uc124\uc815 5\ub77c\uc6b4\ub4dc \uc0dd\uc131\ud588\ub294\ub370 10\ub77c\uc6b4\ub4dc(=15\ub77c\uc6b4\ub4dc \ucd1d)\uac00 \ub41c \ucf00\uc774\uc2a4.\\n\\n\uc6d0\uc778: '\uc0dd\uc131' \ubc84\ud2bc\uc774 \ube60\ub974\uac8c \ub450 \ubc88 \ub20c\ub824 segment\uac00 \uc911\ubcf5 append\ub428.\\n\\n\uc218\uc815:\\n- BalancedScheduleModal\uc5d0 submitted state\ub85c \ub354\ube14\ud074\ub9ad \ucc28\ub2e8\\n- POP_SCHEDULE_SEGMENT \ub9ac\ub4c0\uc11c \uc561\uc158\uc73c\ub85c \uc798\ubabb \ucd94\uac00\ub41c segment \uc81c\uac70\\n- ScheduleModal\uc5d0 '\ub9c8\uc9c0\ub9c9 N\ub77c\uc6b4\ub4dc \uc81c\uac70' \ubc84\ud2bc (\uc790\uc720\ub300\uc9c4+\uc790\ub3d9 schedule \uc788\uc744 \ub54c)\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-d649384c7217b555\",\n    \"filename\": \"src/App.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 0,\n    \"changes\": 3,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/9b393f54b56bfba12d1a133444826b2dcf86f8df/src%2FApp.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-842f125ec6464436\",\n    \"filename\": \"src/components/game/BalancedScheduleModal.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 11,\n    \"deletions\": 4,\n    \"changes\": 15,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/9b393f54b56bfba12d1a133444826b2dcf86f8df/src%2Fcomponents%2Fgame%2FBalancedScheduleModal.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-4e8d370532d6b193\",\n    \"filename\": \"src/components/game/ScheduleModal.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 21,\n    \"deletions\": 2,\n    \"changes\": 23,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/9b393f54b56bfba12d1a133444826b2dcf86f8df/src%2Fcomponents%2Fgame%2FScheduleModal.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-d15105fcd3ba74f5\",\n    \"filename\": \"src/hooks/__tests__/useGameReducer.popSegment.test.js\",\n    \"label\": \"test_or_ci\",\n    \"status\": \"added\",\n    \"additions\": 92,\n    \"deletions\": 0,\n    \"changes\": 92,\n    \"blo\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-296e3cc2f7985eb2", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384394, "scanner": "foundry_dataset", "fingerprint": "8f244dbf8a3be5011d79a2abdc242916ff502b6c6143f729b229b3c3b0c9d683", "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": "yssc-dev/master-fc#13", "human_labels": ["agent_instruction_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "13", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-09f8a60d36fda9dc", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 1, "ui_or_frontend": 1}, "linked_commit_count": 3, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#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_high_confidence\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#13\nRepo: yssc-dev/master-fc\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'test_or_ci': 1, 'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-3159e386341b0a89\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/13\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/13\\nTitle: fix(futsal): RTDB \ubcf5\uc6d0 \uc2dc schedule.matches \ub204\ub77d\ub41c \ub450 \ubc88\uc9f8 \ub9e4\uce58 \ubcf5\uad6c\\nBody:\\n\uc5b4\uc81c \uc785\ub825\uc2dc\uc5d4 \ub450 \ucf54\ud2b8 \ubaa8\ub450 \ubcf4\uc600\uc9c0\ub9cc \uc624\ub298 \uc7ac\uc811\uc18d\ud558\ub2c8 A\uad6c\uc7a5\ub9cc \ud45c\uc2dc \u2192 Firebase RTDB\uc758 \uae4a\uc740 \uc911\ucca9 \ubc30\uc5f4 \uc9c1\ub82c\ud654 quirk\ub85c round.matches \ub450 \ubc88\uc9f8 \uc2ac\ub86f\uc774 \ub204\ub77d\ub41c \ucf00\uc774\uc2a4.\\n\\nreconstructState\uc5d0\uc11c normalizeSchedule \ud638\ucd9c \u2014 \uac1d\uccb4\u2194\ubc30\uc5f4 \uc815\uaddc\ud654 + completedMatches\ub85c \ub204\ub77d \uc2ac\ub86f \ubcf5\uad6c.\\n\\n\ud14c\uc2a4\ud2b8 8\uac74. \uc0ac\uc6a9\uc790\uc758 \ud604\uc7ac \ub370\uc774\ud130\ub3c4 \ubcf5\uad6c\ub418\uc5b4 \uc815\uc0c1 \ud45c\uc2dc\ub420 \uac83.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-e17780bd20149cf3\",\n    \"filename\": \"src/services/__tests__/normalizeSchedule.test.js\",\n    \"label\": \"test_or_ci\",\n    \"status\": \"added\",\n    \"additions\": 92,\n    \"deletions\": 0,\n    \"changes\": 92,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/0357137e190384d7e4e9c1d274903e5ab6f8c461/src%2Fservices%2F__tests__%2FnormalizeSchedule.test.js\"\n  },\n  {\n    \"id\": \"github-pr-file-file-bdcfc28faa866b6f\",\n    \"filename\": \"src/services/firebaseSyncDiff.js\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 54,\n    \"deletions\": 1,\n    \"changes\": 55,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/0357137e190384d7e4e9c1d274903e5ab6f8c461/src%2Fservices%2FfirebaseSyncDiff.js\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-1aae5aa2e9e1cbc8\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 6, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_schemas_h\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-41fbb2307f62820a", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384393, "scanner": "foundry_dataset", "fingerprint": "dd01fae44262e0c7208e7abd43956d0016599fa3bd60cf21a09970635de17599", "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": "yssc-dev/master-fc#12", "human_labels": ["agent_instruction_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "12", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.817, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-1de1fb8c3483ccf1", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 3, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 1, "ui_or_frontend": 2}, "linked_commit_count": 5, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#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_high_confidence\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#12\nRepo: yssc-dev/master-fc\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: 3\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 2, 'test_or_ci': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-998171c01db94284\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/12\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/12\\nTitle: feat(futsal): \ub77c\uc6b4\ub4dc\ucd08\uae30\ud654 \ubc84\ud2bc \u2014 \ud300 \uad6c\uc131 \uc720\uc9c0 + \uc9c4\ud589 \uae30\ub85d\ub9cc \ub9ac\uc14b\\nBody:\\n\uc0ac\uc6a9\uc790 \uc694\uccad: \uacbd\uae30 \uc790\uccb4\ub294 \ub450\uace0 \ub77c\uc6b4\ub4dc \uc9c4\ud589 \uae30\ub85d\ub9cc \ucd08\uae30\ud654\ud574\uc11c \ub2e4\uc2dc \uc2dc\uc791 \uac00\ub2a5\ud558\uac8c.\\n\\n- RESET_MATCH_PROGRESS reducer \uc561\uc158\\n- '\ub77c\uc6b4\ub4dc\ucd08\uae30\ud654' \ubc84\ud2bc (\uacbd\uae30\uc0ad\uc81c \uc606, \uad00\ub9ac\uc790 + completedMatches > 0)\\n- 2\ub2e8\uacc4 confirm\\n- \ud14c\uc2a4\ud2b8 3\uac74\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-c022093a083ffff3\",\n    \"filename\": \"src/App.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 7,\n    \"deletions\": 0,\n    \"changes\": 7,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/391a7aec784ec1c55fde0fafe6df132fafc24191/src%2FApp.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-9db408ae19457c97\",\n    \"filename\": \"src/hooks/__tests__/useGameReducer.resetProgress.test.js\",\n    \"label\": \"test_or_ci\",\n    \"status\": \"added\",\n    \"additions\": 75,\n    \"deletions\": 0,\n    \"changes\": 75,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/391a7aec784ec1c55fde0fafe6df132fafc24191/src%2Fhooks%2F__tests__%2FuseGameReducer.resetProgress.test.js\"\n  },\n  {\n    \"id\": \"github-pr-file-file-90b6cf690783d7d5\",\n    \"filename\": \"src/hooks/useGameReducer.js\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 21,\n    \"deletions\": 0,\n    \"changes\": 21,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/391a7aec784ec1c55fde0fafe6df132fafc24191/src%2Fhooks%2FuseGameReducer.js\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-2dc3c20d3578dd30\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-876aee8c5040d772", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384392, "scanner": "foundry_dataset", "fingerprint": "829eac928ffdca6ea9fb3ce50c03dc419e76ec8467bfe90b1cd668c2995d33f6", "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": "yssc-dev/master-fc#11", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "11", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.882, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-cabf8dfeab6c3a37", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "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": 5, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#11\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\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#11\nRepo: yssc-dev/master-fc\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: 1\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-f72d94bd2514b392\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/11\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/11\\nTitle: fix(futsal): \uc790\uc720\ub300\uc9c4 GK \ud544\uc218\uccb4\ud06c + forced exit \ubc84\ud2bc \uc81c\uac70\\nBody:\\n1. \uc790\uc720\ub300\uc9c4 \ub77c\uc6b4\ub4dc \ud655\uc815 \uc2dc GK \ubbf8\uc9c0\uc815 \uc2dc \ucc28\ub2e8 (\ub300\uc9c4\ud45c \ubaa8\ub4dc\uc640 \ub3d9\uc77c \ud328\ud134)\\n2. forced \ubaa8\ub4dc '\u2190 \uc2a4\ucf00\uc904\ub85c \ub3cc\uc544\uac00\uae30' \ubc84\ud2bc \uc81c\uac70 (\u25b6 \uc790\ub3d9 \ubcf5\uadc0\ub85c \ucda9\ubd84)\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-1ffe0f0ddb6db648\",\n    \"filename\": \"src/components/game/FreeMatchView.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 10,\n    \"deletions\": 14,\n    \"changes\": 24,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/82efa3d9d94300a09a80ce018f1947279c8dd9d5/src%2Fcomponents%2Fgame%2FFreeMatchView.jsx\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-4aaf56001f6203f7\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 6, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"designs\": 1, \"docs\": 6, \"schemas\": 1}\nHelicopter views: {\"schemas\": 2}\nBundle labels: {\"source_backed_fake_real_verification_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-d7a26c03099a4b04", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384391, "scanner": "foundry_dataset", "fingerprint": "f914d4dece02c97455a7640bed8adbc3f3dc87f96e22a26b27ee85a3f0e2e148", "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": "yssc-dev/master-fc#10", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "10", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.882, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-a4bb92ac63e75087", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 3, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 3}, "linked_commit_count": 5, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#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_high_confidence\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#10\nRepo: yssc-dev/master-fc\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: 3\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-36a56eb43d94db5e\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/10\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/10\\nTitle: feat(futsal): \ud63c\ud569 \ubaa8\ub4dc \u25c0 \ud55c \ubc88\uc73c\ub85c \uc774\uc804 \uc790\uc720 \ub77c\uc6b4\ub4dc\ub85c \uc774\ub3d9\\nBody:\\n\uc0ac\uc6a9\uc790 \ud53c\ub4dc\ubc31: ScheduleView R1\uc5d0\uc11c \u25c0 \ube44\ud65c\uc131\uc774\ub77c \uc774\uc804 \uc790\uc720 \ub77c\uc6b4\ub4dc\ub85c \ubabb \uac10 \u2192 \uace8/\uc5b4\uc2dc \uc218\uc815 \uc5b4\ub824\uc6c0.\\n\\nR1\uc5d0\uc11c \u25c0 \u2192 \ub9c8\uc9c0\ub9c9 F\ub85c \uc810\ud504, F1~F5 \uc0ac\uc774 \uc774\ub3d9, \ub9c8\uc9c0\ub9c9 F\uc5d0\uc11c \u25b6 \u2192 R1 \ubcf5\uadc0.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-bd8124d3056cb494\",\n    \"filename\": \"src/App.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 4,\n    \"deletions\": 0,\n    \"changes\": 4,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/d278d03e4151468bd0243040e6a6bd2fa65365e1/src%2FApp.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-145e924e9deb8938\",\n    \"filename\": \"src/components/game/FreeMatchView.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 30,\n    \"deletions\": 6,\n    \"changes\": 36,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/d278d03e4151468bd0243040e6a6bd2fa65365e1/src%2Fcomponents%2Fgame%2FFreeMatchView.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-23fc1d76add41814\",\n    \"filename\": \"src/components/game/ScheduleMatchView.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 11,\n    \"deletions\": 4,\n    \"changes\": 15,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/d278d03e4151468bd0243040e6a6bd2fa65365e1/src%2Fcomponents%2Fgame%2FScheduleMatchView.jsx\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-a61288e5ba1a41cc\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verifi\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-adbf1c2ede75d418", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: yssc-dev/master-fc"}, "properties": {"repobilityId": 384390, "scanner": "foundry_dataset", "fingerprint": "4777fb2c2fe31257fd8dae46cd9aef5e95b23339163d8921825ab5a93c163cdb", "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": "yssc-dev/master-fc#1", "human_labels": ["test_ci_gap"], "issue_number": "1", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-23c731ada03da563", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "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": 2, "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: yssc-dev/master-fc\nThread: yssc-dev/master-fc#1\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: yssc-dev/master-fc#1\nRepo: yssc-dev/master-fc\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-7b64c7bd667eade8\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/1\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/1\\nTitle: feat(futsal): \uade0\ub4f1 \uc790\ub3d9 \uc2a4\ucf00\uc904 \u2014 \uc790\uc720\ub300\uc9c4 \ub3c4\uc911 \uc784\uc758 \uc2dc\uc810\uc5d0 \uade0\ub4f1 \ub77c\uc6b4\ub4dc \uc790\ub3d9 \uc0dd\uc131\\nBody:\\n## \uc694\uc57d\\n\uc790\uc720\ub300\uc9c4 \ubaa8\ub4dc \uc9c4\ud589 \uc911 \uc784\uc758 \uc2dc\uc810\uc5d0 \ub77c\uc6b4\ub4dc\ub85c\ube48 \uc0ac\uc774\ud074\uc744 \uc790\ub3d9 \uc0dd\uc131\ud574 schedule\uc5d0 append\ud558\ub294 \uae30\ub2a5. **4\u00b75\ud300**\uc5d0\uc11c \ud65c\uc131\ud654, \ucf54\ud2b8 \uc218\ub294 \ub9e4 segment\ub9c8\ub2e4 \uac00\ubcc0 \uc785\ub825.\\n\\n\uc6d0\ub798 use case: \uc608\uc57d \uc0ac\uc815\uc73c\ub85c \uc804\ubc18 1\ucf54\ud2b8 + \ud6c4\ubc18 2\ucf54\ud2b8 (\ub610\ub294 \uadf8 \ubc18\ub300) \uac19\uc740 \ubcc0\uce59 \uc77c\uc815\uc5d0\uc11c \ubaa8\ub4e0 \ud300\uc758 \ub204\uc801 \ub9e4\uce58 \uc218\ub97c \uade0\ub4f1\ud558\uac8c \uc720\uc9c0\ud558\uae30.\\n\\n## \uc8fc\uc694 \ubcc0\uacbd \ud30c\uc77c\\n\\n| \ud30c\uc77c | \uc561\uc158 |\\n|---|---|\\n| `src/utils/balancedSchedule.js` | \uc2e0\uaddc \u2014 \uc54c\uace0\ub9ac\uc998 (`generateBalancedSegment`) + \ub9e4\uce58\ub2f9 \uc2dc\uac04 \ucd94\uc815 + \ub204\uc801 \uce74\uc6b4\ud305 |\\n| `src/components/game/BalancedScheduleModal.jsx` | \uc2e0\uaddc \u2014 \uc785\ub825 UI + \ubbf8\ub9ac\ubcf4\uae30 + \ub77c\uc774\ube0c \ub9e4\uce58 \uac00\ub4dc |\\n| `src/components/game/ScheduleModal.jsx` | \ube48 \uc0c1\ud0dc, \uc790\ub3d9\uc124\uc815 \uc9c4\uc785\uc810, \uc790\uc720 \ub9e4\uce58 \uc548\ub0b4, formatDesc \ud655\uc7a5, **\ud63c\ud569 \ucf54\ud2b8 \ub808\uc774\uc544\uc6c3 \ubcf4\uc874** |\\n| `src/components/game/ScheduleMatchView.jsx` | \ud63c\ud569 \ucf54\ud2b8 \uc2dc viewing round\uc758 \ub9e4\uce58 \uc218 \uae30\uc900 \ub77c\ubca8\ub9c1 |\\n| `src/hooks/useGameReducer.js` | `APPEND_SCHEDULE_SEGMENT` \uc561\uc158 |\\n| `src/App.jsx` | `shouldShowSchedule` \ud5ec\ud37c, 5\uac1c \uc870\uac74 \uc9c0\uc810, \ubaa8\ub2ec \ud1b5\ud569 (\uae30\uc874 \ub300\uc9c4\ud45c/push \ubaa8\ub4dc \ud68c\uadc0 \uc5c6\uc74c) |\\n\\n## \uac80\uc99d\\n\\n- **339 / 339 \ub2e8\uc704 \ud14c\uc2a4\ud2b8 \ud1b5\uacfc** (Vitest)\\n- **\ube4c\ub4dc \ud074\ub9b0** (Vite build, no lint errors)\\n- **\uc54c\uace0\ub9ac\uc998 \ub2e8\uc704 \ud14c\uc2a4\ud2b8**: 4\u00b75\ud300 \u00d7 1\u00b72\ucf54\ud2b8 \u00d7 1\u00b72 cycles \ubaa8\ub4e0 \uc870\ud569 + \ub9e4\uce58\uc5c5 \ub2e4\uc591\uc131 + \ud734\uc2dd \uade0\ub4f1\\n- **Reducer \ub2e8\uc704 \ud14c\uc2a4\ud2b8**: APPEND 4\uac00\uc9c0 currentRoundIdx \ubcf4\uc815 \ucf00\uc774\uc2a4\\n- **\ud68c\uadc0 \ubd84\uc11d\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-a492986fb852f12c\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: yssc-dev/master-fc\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 6, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccur\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-assumption_checks-6cfa41c64e0bba43", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: yssc-dev/master-fc"}, "properties": {"repobilityId": 420956, "scanner": "foundry_dataset", "fingerprint": "49704b85dd5eba648b760180a55228855c0c7a5bb36d25152fc76cc0992ab402", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 4, "test_ci_gap": 1, "ui_workflow": 1, "partial blueprint fit": 3, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 3, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 28, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 23, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "yssc-dev/master-fc#1", "issue_number": "1", "quality_tiers": {"high_confidence": 3, "assumption_check": 3}, "repo_full_name": "yssc-dev/master-fc", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-c07fb1a60f7aa793", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#1\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#1\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: yssc-dev/master-fc#1\nRepo: yssc-dev/master-fc\nIssue/PR number: 1\nGraph consistency label: supported_by_high_confidence_link\nNodes: 23\nEdges: 28\nNode types: {'link_quality': 6, 'commit': 5, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'comment_chain_links_commit': 5, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'bug_fix': 4, 'claimed_resolved_unverified': 3, 'blueprint_human_gap_alignment': 3, 'partial blueprint fit': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'ui_workflow': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "graph-query-motif_query-866004c005f2c430", "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": "yssc-dev/master-fc", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: yssc-dev/master-fc"}, "properties": {"repobilityId": 392345, "scanner": "foundry_dataset", "fingerprint": "146b1b91fc42807fdebde1e906d9485646a0abf71b00e75be81c30b015979951", "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": "yssc-dev/master-fc#21", "human_labels": ["agent_instruction_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "21", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "self_attested_unverified", "source_backed": true, "max_confidence": 0.905, "repo_full_name": "yssc-dev/master-fc", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-a134d19c4afb3c6a", "helicopter_views": {"schemas": 2}, "artifact_families": {"docs": 6, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 5, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 1, "ui_or_frontend": 4}, "linked_commit_count": 1, "helicopter_view_count": 2, "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"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: bad_chains\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#21\nOutcome: self_attested_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\nChain evidence:\nIssue/PR evidence chain: yssc-dev/master-fc#21\nRepo: yssc-dev/master-fc\nThread label: thread_has_human_issue_and_fix_context\nOutcome: self_attested_unverified\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 5\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 4, 'test_or_ci': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-3f4f1b2084ccad78\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/yssc-dev/master-fc/pull/21\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: yssc-dev/master-fc\\nAuthor: yssc-dev (User)\\nURL: https://github.com/yssc-dev/master-fc/pull/21\\nTitle: feat(futsal): \uacfc\uac70 \ub9e4\uce58 \ud734\uc2dd \ud1a0\uae00 \uc9c0\uc6d0\\nBody:\\n\uc0ac\uc6a9\uc790\uac00 \ub77c\uc6b4\ub4dc \ud655\uc815\ucde8\uc18c \ud6c4 \uae40\uc7a5\uc218 \ud734\uc2dd \ud074\ub9ad \u2192 \ub3d9\uc791 \uc548 \ud568. TOGGLE_ABSENT\ub294 \ub77c\uc774\ube0c absentees\ub9cc \ub2e4\ub8e8\ubbc0\ub85c confirmed \ub9e4\uce58\uc758 \uc2a4\ub0c5\uc0f7\uc5d4 \uc601\ud5a5 \uc5c6\uc74c.\\n\\n\uc0c8 EDIT_PAST_ABSENT_TOGGLE \uc561\uc158 + FreeMatchView/ScheduleMatchView confirmed \ub77c\uc6b4\ub4dc \ubaa8\ub450 \uc9c0\uc6d0.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-897381fdb7511492\",\n    \"filename\": \"src/App.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 7,\n    \"deletions\": 4,\n    \"changes\": 11,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/bd136f0e0eded67e2e372fc64ea3be1e318c55b6/src%2FApp.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-e20d6fccce4c3b2e\",\n    \"filename\": \"src/components/game/FreeMatchView.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 4,\n    \"deletions\": 1,\n    \"changes\": 5,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/bd136f0e0eded67e2e372fc64ea3be1e318c55b6/src%2Fcomponents%2Fgame%2FFreeMatchView.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-c7a6a106fb0de351\",\n    \"filename\": \"src/components/game/ScheduleMatchView.jsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 4,\n    \"deletions\": 2,\n    \"changes\": 6,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/bd136f0e0eded67e2e372fc64ea3be1e318c55b6/src%2Fcomponents%2Fgame%2FScheduleMatchView.jsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-dd9574eda44874f9\",\n    \"filename\": \"src/hooks/__tests__/useGameReducer.editPastAbsent.test.js\",\n    \"label\": \"test_or_ci\",\n    \"status\": \"added\",\n    \"additions\": 73,\n    \"deletions\": 0,\n    \"changes\": 73,\n    \"blob_url\": \"https://github.com/yssc-dev/master-fc/blob/bd136f0e0eded67e2e372fc64ea3be1e318c55b6/src%2Fhooks%2F_\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "comment-chain-pattern-bad_chains-6ea274730850df26", "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": "yssc-dev/master-fc", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_fake_real_gap", "level": "error", "message": {"text": "Foundry mined mock as real or placeholder: yssc-dev/master-fc"}, "properties": {"repobilityId": 408524, "scanner": "foundry_dataset", "fingerprint": "d2461def1b80d7154fee8f61d570a405b5aafb017f65813b626c36f7001225f5", "category": "practices", "severity": "critical", "confidence": 0.82, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Mock, sample, placeholder, or self-attested behavior treated as real", "intent": "Hard negatives for fake completeness and missing real data paths.", "labels": {"test_or_ci": 1, "ui_or_frontend": 4, "generated_provenance": 1, "agent_instruction_gap": 1, "self_attested_unverified": 3, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"self_attested_unverified": 6}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 27, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 5, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 5, "thread_has_comment_chain": 1, "comment_chain_links_commit": 1, "comment_chain_touches_file": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 15, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 1, "pr_file": 5, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "yssc-dev/master-fc#21", "issue_number": "21", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "yssc-dev/master-fc", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-183ea4a511ef7941", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 4, "ui_or_frontend": 16}}, "text": "Graph query export: Mock, sample, placeholder, or self-attested behavior treated as real\nQuery id: mock_as_real_or_placeholder\nQuery type: motif_query\nIntent: Hard negatives for fake completeness and missing real data paths.\nMotif: mock_as_real_or_placeholder\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#21\nEvidence:\nGraph motif: Mock, sample, placeholder, or self-attested behavior treated as real\nMotif id: mock_as_real_or_placeholder\nPolarity: bad\nTraining usage: hard_negative\nSeverity: critical\nRepo: yssc-dev/master-fc\nThread: yssc-dev/master-fc#21\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: yssc-dev/master-fc#21\nRepo: yssc-dev/master-fc\nIssue/PR number: 21\nGraph consistency label: supported_by_high_confidence_link\nNodes: 15\nEdges: 27\nNode types: {'pr_file': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 5, 'comment_chain_touches_file': 5, 'issue_chain_touches_file': 5, 'chain_has_link_quality': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_links_commit': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 4, 'self_attested_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'test_or_ci': 1, 'self_attested_or_generated_fix_unverified': 1, 'generated_provenance': 1}\nOutcomes: {'self_attested_unverified': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {}\nCurriculum targets:\n- Train real-data plumbing and mock-removal tasks from source to UI.\n- Use as hard negatives for dashboards or apps claiming real runs without provenance.\nAssumption checks:\n- Is user-visible behavior backed by real storage/API/CI artifacts?\n- Are placeholders, sample data, or generated claims still in a production path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/yssc-dev/master-fc", "source_id": "graph-query-motif_query-3a33bacb5c4341f4", "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": "yssc-dev/master-fc", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "scanner-8af72a2f4b4331e7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 tests/table-width.spec.js:9"}, "properties": {"repobilityId": "22a545cd13b675cc", "scanner": "scanner-primary", "fingerprint": "8af72a2f4b4331e7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2822c3abf23d53f4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/components/dashboard/PlayerAnalyticsLegacy.jsx:267"}, "properties": {"repobilityId": "9ce29004bc26269c", "scanner": "scanner-primary", "fingerprint": "2822c3abf23d53f4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8a3597429427f8ae", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/components/dashboard/TeamDashboard.jsx:535"}, "properties": {"repobilityId": "ba827ce591a0b354", "scanner": "scanner-primary", "fingerprint": "8a3597429427f8ae", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-34d9b5eb37c73baf", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 src/components/game/FormationSetup.jsx:59"}, "properties": {"repobilityId": "9a6a350f52f2a880", "scanner": "scanner-primary", "fingerprint": "34d9b5eb37c73baf", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-fd4493fdb6c372d8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/appSync.js:142"}, "properties": {"repobilityId": "ea60ca678ccc8d6c", "scanner": "scanner-primary", "fingerprint": "fd4493fdb6c372d8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6372cebde0220094", "level": "warning", "message": {"text": "No auth library detected"}, "properties": {"repobilityId": "a5b6035a5bbf8054", "scanner": "scanner-primary", "fingerprint": "6372cebde0220094", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["coverage", "auth"]}}, {"ruleId": "scanner-28c4a04bd807da0c", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "419d1ec7943efec2", "scanner": "scanner-primary", "fingerprint": "28c4a04bd807da0c", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy.yml"}, "region": {"startLine": 57}}}]}, {"ruleId": "scanner-ad6701f0a8405e22", "level": "warning", "message": {"text": "GitHub Actions workflow grants broad write permissions"}, "properties": {"repobilityId": "8384c23520d55657", "scanner": "scanner-primary", "fingerprint": "ad6701f0a8405e22", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "least-privilege"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy.yml"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-db8f564919f2717e", "level": "note", "message": {"text": "Very large file: apps-script/Code.js (2784 lines)"}, "properties": {"repobilityId": "5369579e47c5dac9", "scanner": "scanner-primary", "fingerprint": "db8f564919f2717e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-8e44c0ef5daf10c7", "level": "note", "message": {"text": "Very large file: src/App.jsx (1632 lines)"}, "properties": {"repobilityId": "a59a84e7052cf35b", "scanner": "scanner-primary", "fingerprint": "8e44c0ef5daf10c7", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f47cbf46fdde3176", "level": "note", "message": {"text": "Very large file: src/components/dashboard/TeamDashboard.jsx (1005 lines)"}, "properties": {"repobilityId": "d9853965ccaa4588", "scanner": "scanner-primary", "fingerprint": "f47cbf46fdde3176", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "29952197312c9160", "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": "abcca40bd8224d3e", "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": "2fbbda94ddac68e6", "scanner": "scanner-primary", "fingerprint": "72b2a6250083a784", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "incomplete", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "a1eee2d617e1a551", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "a2ab3783805f24cb", "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": "1f095a4e8ee85c6a", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-acbd7a123df38387", "level": "none", "message": {"text": "Commented-code block (5 lines) in migration-script.js:132"}, "properties": {"repobilityId": "845517db61253095", "scanner": "scanner-primary", "fingerprint": "acbd7a123df38387", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-87c8d48e1f320e73", "level": "none", "message": {"text": "Commented-code block (6 lines) in design_handoff_monochrome_canvas 2/useTheme.jsx:3"}, "properties": {"repobilityId": "dee9bc568f53eb50", "scanner": "scanner-primary", "fingerprint": "87c8d48e1f320e73", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-16d207d8ec418302", "level": "none", "message": {"text": "Commented-code block (5 lines) in design_handoff_monochrome_canvas 2/theme.js:7"}, "properties": {"repobilityId": "13c0bd3ccd11769b", "scanner": "scanner-primary", "fingerprint": "16d207d8ec418302", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7069a39ef516d9d2", "level": "none", "message": {"text": "Commented-code block (5 lines) in design_handoff_monochrome_canvas 2/prototype/screens.jsx:113"}, "properties": {"repobilityId": "6c580405b3ecc14c", "scanner": "scanner-primary", "fingerprint": "7069a39ef516d9d2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9801bd28cdfd176a", "level": "none", "message": {"text": "Commented-code block (6 lines) in design_handoff_monochrome_canvas 2/prototype/design-canvas.jsx:2"}, "properties": {"repobilityId": "d32299fa166aaa77", "scanner": "scanner-primary", "fingerprint": "9801bd28cdfd176a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-20f8883dab77ec33", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 design_handoff_monochrome_canvas 2/prototype/design-canvas.jsx:63"}, "properties": {"repobilityId": "2f9f79f4975cc7b0", "scanner": "scanner-primary", "fingerprint": "20f8883dab77ec33", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e67ea67eecd107c9", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/findMissingAssist.mjs:6"}, "properties": {"repobilityId": "cd049ad39957e6a5", "scanner": "scanner-primary", "fingerprint": "e67ea67eecd107c9", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-cef073b4c4af8a81", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/regenerateEvents18_15.mjs:16"}, "properties": {"repobilityId": "2a04460e5ab55b37", "scanner": "scanner-primary", "fingerprint": "cef073b4c4af8a81", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-93bc5a87d0af8e7d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/backfillPlayerGames.mjs:24"}, "properties": {"repobilityId": "27598f3fb634f7a8", "scanner": "scanner-primary", "fingerprint": "93bc5a87d0af8e7d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-613b32dd47471f3f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/verifyImport2.mjs:6"}, "properties": {"repobilityId": "3986ff9c08b0124f", "scanner": "scanner-primary", "fingerprint": "613b32dd47471f3f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-112aee546fa77e69", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/checkPgColumns.mjs:5"}, "properties": {"repobilityId": "9f6a2975ca6f62a2", "scanner": "scanner-primary", "fingerprint": "112aee546fa77e69", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a4591a75c2de77de", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/verifyImport.mjs:13"}, "properties": {"repobilityId": "adecd2416faff8e3", "scanner": "scanner-primary", "fingerprint": "a4591a75c2de77de", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-053e97d606148408", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/verifyAll.mjs:15"}, "properties": {"repobilityId": "0c3bc7d01e08c73d", "scanner": "scanner-primary", "fingerprint": "053e97d606148408", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8a71833b91204e81", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/reimportAllPointLogs.mjs:18"}, "properties": {"repobilityId": "57d6d9c94e8fe7f0", "scanner": "scanner-primary", "fingerprint": "8a71833b91204e81", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5e45d98f15780064", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/inspectMatchLog.mjs:16"}, "properties": {"repobilityId": "943b94866358c83d", "scanner": "scanner-primary", "fingerprint": "5e45d98f15780064", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5d2534d416874b3c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/diffBackfill.mjs:7"}, "properties": {"repobilityId": "556658d2bd7e1fe0", "scanner": "scanner-primary", "fingerprint": "5d2534d416874b3c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-162612198057fcbc", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/backfillMatchLog.mjs:236"}, "properties": {"repobilityId": "7188202db3408fec", "scanner": "scanner-primary", "fingerprint": "162612198057fcbc", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a76333daeb7ce458", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/splitJan15.mjs:10"}, "properties": {"repobilityId": "256b374277a12307", "scanner": "scanner-primary", "fingerprint": "a76333daeb7ce458", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3e45afdb19d4c81e", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/comparePlayer.mjs:9"}, "properties": {"repobilityId": "fd554566cd613a9a", "scanner": "scanner-primary", "fingerprint": "3e45afdb19d4c81e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e7d4a6666627956c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/inspectDate.mjs:9"}, "properties": {"repobilityId": "6a3b77e7bdf0536f", "scanner": "scanner-primary", "fingerprint": "e7d4a6666627956c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7aeb524ccaf30e0f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/compareDates.mjs:15"}, "properties": {"repobilityId": "c561df74570b8d33", "scanner": "scanner-primary", "fingerprint": "7aeb524ccaf30e0f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0a105c98a64061f2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/inspectSheets.mjs:17"}, "properties": {"repobilityId": "2f255dde455834c6", "scanner": "scanner-primary", "fingerprint": "0a105c98a64061f2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a3dbe600deb23578", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/classifyDates.mjs:7"}, "properties": {"repobilityId": "f9c4a6d3d2690f4f", "scanner": "scanner-primary", "fingerprint": "a3dbe600deb23578", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-29519c1ff02d7ced", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/migrate/buildJan815.mjs:25"}, "properties": {"repobilityId": "64717b55027c12c6", "scanner": "scanner-primary", "fingerprint": "29519c1ff02d7ced", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4c4c3a8b1e899c2a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/buildJan815.mjs:21"}, "properties": {"repobilityId": "6faed238b32e10f8", "scanner": "scanner-primary", "fingerprint": "4c4c3a8b1e899c2a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-03d57c5141246baa", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/inspectMissing.mjs:7"}, "properties": {"repobilityId": "a4b48077fd3dacf2", "scanner": "scanner-primary", "fingerprint": "03d57c5141246baa", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-04cc8898adbea3b3", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scripts/migrate/diffSheet27.mjs:6"}, "properties": {"repobilityId": "13f200052fd2ca90", "scanner": "scanner-primary", "fingerprint": "04cc8898adbea3b3", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3988e7e44f5d2d54", "level": "none", "message": {"text": "Commented-code block (35 lines) in apps-script/Code.js:4"}, "properties": {"repobilityId": "c8ecbfa5c783cb02", "scanner": "scanner-primary", "fingerprint": "3988e7e44f5d2d54", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fb189235feb7b645", "level": "note", "message": {"text": "Legacy-named symbol `settings_legacy_backup` in src/config/settings.js:141"}, "properties": {"repobilityId": "879a5fcee3340533", "scanner": "scanner-primary", "fingerprint": "fb189235feb7b645", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-be6d92bc710155af", "level": "note", "message": {"text": "Legacy-named symbol `byLegacy` in src/utils/gameRecordBuilder.js:73"}, "properties": {"repobilityId": "e71eeb4cdbb50386", "scanner": "scanner-primary", "fingerprint": "be6d92bc710155af", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-d033ba2ab430429c", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/utils/analyticsV2/calcPersonalSynergy.js:6"}, "properties": {"repobilityId": "87d4f4e4205c4a85", "scanner": "scanner-primary", "fingerprint": "d033ba2ab430429c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7fc305ed6deee551", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/utils/analyticsV2/calcAwards.js:1"}, "properties": {"repobilityId": "ac2b01547ce316d6", "scanner": "scanner-primary", "fingerprint": "7fc305ed6deee551", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fd3d98484338993d", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/utils/analyticsV2/parseMembers.js:1"}, "properties": {"repobilityId": "f3142a2a2f647eed", "scanner": "scanner-primary", "fingerprint": "fd3d98484338993d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fae9d63c63b6838a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/utils/analyticsV2/calcGkChemistry.js:1"}, "properties": {"repobilityId": "fcc02d43d0c0251e", "scanner": "scanner-primary", "fingerprint": "fae9d63c63b6838a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5200d3ab4d713dd7", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/utils/analyticsV2/calcPlayerSummary.js:4"}, "properties": {"repobilityId": "455beb768460c604", "scanner": "scanner-primary", "fingerprint": "5200d3ab4d713dd7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-76dafe115d368333", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/utils/analyticsV2/calcGoldenTrio.js:1"}, "properties": {"repobilityId": "1becc56e3ace6baf", "scanner": "scanner-primary", "fingerprint": "76dafe115d368333", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c10fe3077ccec747", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/utils/analyticsV2/calcRoundSlope.js:3"}, "properties": {"repobilityId": "2102abe444b1ba2a", "scanner": "scanner-primary", "fingerprint": "c10fe3077ccec747", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ec201fff86f95c1f", "level": "note", "message": {"text": "Legacy-named symbol `PlayerAnalyticsLegacy` in src/components/dashboard/PlayerAnalyticsLegacy.jsx:247"}, "properties": {"repobilityId": "e3120a9c5bee8605", "scanner": "scanner-primary", "fingerprint": "ec201fff86f95c1f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-917a71381cf6f378", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/hooks/useFirebaseSync.js:7"}, "properties": {"repobilityId": "20430c2977d3ad32", "scanner": "scanner-primary", "fingerprint": "917a71381cf6f378", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c79dd6ef4f5e1110", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/services/firebaseSync.js:41"}, "properties": {"repobilityId": "745125d408f69cec", "scanner": "scanner-primary", "fingerprint": "c79dd6ef4f5e1110", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9ea8a4b95f5eb6a9", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/services/appSync.js:22"}, "properties": {"repobilityId": "8c1262fe06e5a307", "scanner": "scanner-primary", "fingerprint": "9ea8a4b95f5eb6a9", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-eb95a77968a6148d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/services/appSync.js:49"}, "properties": {"repobilityId": "0ab7000b1dcb13ff", "scanner": "scanner-primary", "fingerprint": "eb95a77968a6148d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-990160b84d11ce99", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/services/sheetService.js:190"}, "properties": {"repobilityId": "69a701fb8b754f98", "scanner": "scanner-primary", "fingerprint": "990160b84d11ce99", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0414856bf5f2b526", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/services/sheetService.js:136"}, "properties": {"repobilityId": "13ad63be85480a89", "scanner": "scanner-primary", "fingerprint": "0414856bf5f2b526", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-22db6c511949f7e2", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/services/__tests__/syncCoverage.test.js:7"}, "properties": {"repobilityId": "00bea6da067fabac", "scanner": "scanner-primary", "fingerprint": "22db6c511949f7e2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}]}]}