{"version": "2.1.0", "$schema": "https://json.schemastore.org/sarif-2.1.0.json", "runs": [{"tool": {"driver": {"name": "Repobility", "informationUri": "https://repobility.com", "rules": [{"id": "foundry_unresolved_feedback", "name": "Foundry mined unresolved feedback: x380kkm/Live2DPet", "shortDescription": {"text": "Foundry mined unresolved feedback: x380kkm/Live2DPet"}, "fullDescription": {"text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#9\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#9\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: x380kkm/Live2DPet#9\nRepo: x380kkm/Live2DPet\nIssue/PR number: 9\nGraph consistency label: needs_more_evidence\nNodes: 9\nEdges: 11\nNode types: {'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 3, 'rep"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_blueprint_gap", "name": "Foundry mined blueprint gap alignment: x380kkm/Live2DPet", "shortDescription": {"text": "Foundry mined blueprint gap alignment: x380kkm/Live2DPet"}, "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: assumption_check\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#8\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#8\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: x380kkm/Live2DPet#8\nRepo: x380kkm/Live2DPet\nIssue/PR number: 8\nGraph consistency label: assumption_check\nNodes: 46\nEdges: 89\nNode types: {'pr_file': 25, 'link_quality': 7, 'alignment': 3, 'blueprint_finding': 3, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome'"}, "properties": {"scanner": "foundry_dataset", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_assumption_check", "name": "Foundry mined assumption checks: x380kkm/Live2DPet", "shortDescription": {"text": "Foundry mined assumption checks: x380kkm/Live2DPet"}, "fullDescription": {"text": "Comment chain pattern product: assumption_checks\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#9\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: x380kkm/Live2DPet#9\nRepo: x380kkm/Live2DPet\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-0a22528ceb78d64c\",\n    \"kind\": \"issue_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/9\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_body\\nRepo: x380kk"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "medium", "confidence": 0.62, "cwe": "", "owasp": ""}}, {"id": "foundry_bad_chain", "name": "Foundry mined bad chains: x380kkm/Live2DPet", "shortDescription": {"text": "Foundry mined bad chains: x380kkm/Live2DPet"}, "fullDescription": {"text": "Comment chain pattern product: bad_chains\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#8\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_unresolved, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: x380kkm/Live2DPet#8\nRepo: x380kkm/Live2DPet\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 2\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 25\nLabels: {'api_integration_gap': 1, 'human_feedback_general': 1}\nPolarities: {'bad': 1, 'neutral': 1}\nChanged file labels: {'source_or_other': 7, 'docs_or_claims': 7, 'dependency_or_build': 1, 'ui_or_frontend': 10}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-8efee9572902f0b4\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"po"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "high", "confidence": 0.84, "cwe": "", "owasp": ""}}, {"id": "scanner-b0ab97b6de335343", "name": "Stray `console.log` in TS/JS \u2014 main.js:104", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 main.js:104"}, "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-4b2de7599c15d942", "name": "Stray `console.log` in TS/JS \u2014 libs/pixi.min.js:492", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 libs/pixi.min.js:492"}, "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-f6e7553d1bb1c2c3", "name": "Stray `console.log` in TS/JS \u2014 libs/cubism4.min.js:1", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 libs/cubism4.min.js:1"}, "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-fd9015d2f215929f", "name": "Icon-only button without accessible name \u2014 src/renderer/settings-ui.js:598", "shortDescription": {"text": "Icon-only button without accessible name \u2014 src/renderer/settings-ui.js:598"}, "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-fc4a1c4007603760", "name": "Stray `console.log` in TS/JS \u2014 src/renderer/settings-ui.js:53", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/renderer/settings-ui.js:53"}, "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-4cd0cabf10210ab6", "name": "Stray `console.log` in TS/JS \u2014 src/renderer/model-adapter.js:153", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/renderer/model-adapter.js:153"}, "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-f760fe55b81fc872", "name": "Stray `console.log` in TS/JS \u2014 src/core/emotion-system.js:124", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/core/emotion-system.js:124"}, "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-6c606aaf7de3320e", "name": "Stray `console.log` in TS/JS \u2014 src/core/desktop-pet-system.js:80", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/core/desktop-pet-system.js:80"}, "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-ceffe97d09b32cf3", "name": "Stray `console.log` in TS/JS \u2014 src/core/tts-service.js:102", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/core/tts-service.js:102"}, "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-ec2809d68422aebe", "name": "Stray `console.log` in TS/JS \u2014 src/core/prompt-builder.js:39", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/core/prompt-builder.js:39"}, "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-e89b63d3a5f1802a", "name": "Stray `console.log` in TS/JS \u2014 src/core/message-session.js:74", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/core/message-session.js:74"}, "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-d43ee3dd219a857b", "name": "Stray `console.log` in TS/JS \u2014 src/core/ai-chat.js:18", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/core/ai-chat.js:18"}, "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-0e37101446226f52", "name": "Stray `console.log` in TS/JS \u2014 src/core/enhance/vlm-extractor.js:82", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/core/enhance/vlm-extractor.js:82"}, "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-105c19de6e656327", "name": "Stray `console.log` in TS/JS \u2014 src/core/enhance/memory-tracker.js:24", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/core/enhance/memory-tracker.js:24"}, "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-78e8dc361ad4b2d2", "name": "Stray `console.log` in TS/JS \u2014 src/core/enhance/knowledge-acquisition.js:46", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/core/enhance/knowledge-acquisition.js:46"}, "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-7aa8e98b64f46571", "name": "Stray `console.log` in TS/JS \u2014 src/core/enhance/enhancement-orchestrator.js:29", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/core/enhance/enhancement-orchestrator.js:29"}, "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-ca86c977cc74cbf9", "name": "Stray `console.log` in TS/JS \u2014 src/core/enhance/knowledge-store.js:64", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/core/enhance/knowledge-store.js:64"}, "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-b3dfc5895d6ae42e", "name": "Stray `console.log` in TS/JS \u2014 src/main/character-manager.js:59", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/main/character-manager.js:59"}, "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-d527de921a9d0fba", "name": "Stray `console.log` in TS/JS \u2014 src/main/emotion-ipc.js:8", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/main/emotion-ipc.js:8"}, "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-70909e6ea9dcc8de", "name": "Stray `console.log` in TS/JS \u2014 src/main/enhance-ipc.js:106", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/main/enhance-ipc.js:106"}, "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-4552df98e49c1a53", "name": "Stray `console.log` in TS/JS \u2014 src/main/tts-ipc.js:93", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/main/tts-ipc.js:93"}, "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-9710c8d059e53154", "name": "No frontend routes/components detected", "shortDescription": {"text": "No frontend routes/components detected"}, "fullDescription": {"text": "No React/Vue/Next routes were found. This is fine for backend-only repos."}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8c59fc2e68905270", "name": "Insecure pattern 'node_child_process' in launch.js:5", "shortDescription": {"text": "Insecure pattern 'node_child_process' in launch.js:5"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-182bbf4ad78a6181", "name": "Insecure pattern 'node_child_process' in debug.js:8", "shortDescription": {"text": "Insecure pattern 'node_child_process' in debug.js:8"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-adc946aeb36f2818", "name": "Insecure pattern 'new_function_used' in libs/pixi.min.js:302", "shortDescription": {"text": "Insecure pattern 'new_function_used' in libs/pixi.min.js:302"}, "fullDescription": {"text": "Found a known-risky pattern (new_function_used). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0b3257269efd83eb", "name": "Insecure pattern 'direct_innerhtml_assignment' in libs/pixi.min.js:869", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in libs/pixi.min.js:869"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-af323d17b3083bdd", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/renderer/settings-ui.js:342", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/renderer/settings-ui.js:342"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c3de22e7b370b072", "name": "Insecure pattern 'node_child_process' in src/main/tts-ipc.js:175", "shortDescription": {"text": "Insecure pattern 'node_child_process' in src/main/tts-ipc.js:175"}, "fullDescription": {"text": "Found a known-risky pattern (node_child_process). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "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-4601e3ad3bb28677", "name": "No CI/CD pipelines detected", "shortDescription": {"text": "No CI/CD pipelines detected"}, "fullDescription": {"text": "No GitHub Actions, GitLab CI, or CircleCI configs found. Without CI you can't gate deploys on tests/lints."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4dad83673fc616cc", "name": "Very large file: tests/test-enhance.js (1784 lines)", "shortDescription": {"text": "Very large file: tests/test-enhance.js (1784 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-497f48af4ae914ba", "name": "Very large file: libs/pixi.min.js (1108 lines)", "shortDescription": {"text": "Very large file: libs/pixi.min.js (1108 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-05bf42a49586789f", "name": "Very large file: src/renderer/settings-ui.js (1290 lines)", "shortDescription": {"text": "Very large file: src/renderer/settings-ui.js (1290 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-ea3b5e389d8c9c0f", "name": "Low test-to-source ratio", "shortDescription": {"text": "Low test-to-source ratio"}, "fullDescription": {"text": "5 tests / 43 src (ratio 0.12)."}, "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 77 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 37 placeholder/mock markers across 4 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-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-95c907024bee6591", "name": "Commented-code block (6 lines) in debug.js:2", "shortDescription": {"text": "Commented-code block (6 lines) in debug.js: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-91889b9b45c1024c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 libs/live2dcubismcore.min.js:9", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 libs/live2dcubismcore.min.js: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-7c6b5fdaaf43c6ff", "name": "`fetch()` without try/.catch or AbortSignal \u2014 libs/pixi.min.js:7", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 libs/pixi.min.js: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-4b8391a315994bc4", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/renderer/model-adapter.js:140", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/renderer/model-adapter.js:140"}, "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-e9c5d643953fe8d5", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/core/prompt-builder.js:47", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/core/prompt-builder.js:47"}, "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-6a27232523398e69", "name": "Commented-code block (6 lines) in src/core/enhance/vlm-extractor.js:132", "shortDescription": {"text": "Commented-code block (6 lines) in src/core/enhance/vlm-extractor.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-f33aab50ed201c5f", "name": "Legacy-named symbol `weeksOld` in src/core/enhance/knowledge-acquisition.js:256", "shortDescription": {"text": "Legacy-named symbol `weeksOld` in src/core/enhance/knowledge-acquisition.js:256"}, "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-0654aa11a1aa5533", "name": "Commented-code block (7 lines) in src/core/enhance/enhancement-orchestrator.js:15", "shortDescription": {"text": "Commented-code block (7 lines) in src/core/enhance/enhancement-orchestrator.js:15"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/22929"}, "properties": {"repository": "x380kkm/Live2DPet", "repoUrl": "https://github.com/x380kkm/Live2DPet", "branch": "main"}, "results": [{"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: x380kkm/Live2DPet"}, "properties": {"repobilityId": 371396, "scanner": "foundry_dataset", "fingerprint": "cf822ca70a29eb636ad38a2bbc9b1dc5be280ff93d04f9aa222f1ad1a3e5ebba", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"human_feedback_general": 1, "unlinked_human_feedback": 1, "thread_needs_classification": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 3}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"ambiguous_needs_more_evidence": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 11, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 9, "node_types": {"repo": 1, "thread": 1, "comment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "x380kkm/Live2DPet#9", "issue_number": "9", "quality_tiers": {"unresolved": 3}, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-31eef962c12a43ae", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#9\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#9\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: x380kkm/Live2DPet#9\nRepo: x380kkm/Live2DPet\nIssue/PR number: 9\nGraph consistency label: needs_more_evidence\nNodes: 9\nEdges: 11\nNode types: {'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ambiguous_needs_more_evidence': 3, 'thread_needs_classification': 2, 'issue_or_pull_request_thread': 1, 'human_feedback_general': 1, 'unlinked_human_feedback': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6}\nQuality tiers: {'unresolved': 3}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "graph-query-motif_query-a06c0be67407656b", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/unresolved_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: x380kkm/Live2DPet"}, "properties": {"repobilityId": 371395, "scanner": "foundry_dataset", "fingerprint": "85d529264d9daa514b9f990e64f123989a8aaf6ac24a510ba540200ef46da66a", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"docs_or_claims": 7, "ui_or_frontend": 10, "source_or_other": 7, "api_integration_gap": 1, "dependency_or_build": 1, "partial blueprint fit": 3, "human_feedback_general": 1, "unlinked_human_feedback": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_alignment": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 89, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 25, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 7, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 46, "node_types": {"repo": 1, "thread": 1, "comment": 2, "pr_file": 25, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 2, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "x380kkm/Live2DPet#8", "issue_number": "8", "quality_tiers": {"unresolved": 4, "assumption_check": 3}, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-aa92cb7da064e385", "graph_gold_label": "assumption_check", "changed_file_labels": {"docs_or_claims": 35, "ui_or_frontend": 50, "source_or_other": 35, "dependency_or_build": 5}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: assumption_check\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#8\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#8\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: x380kkm/Live2DPet#8\nRepo: x380kkm/Live2DPet\nIssue/PR number: 8\nGraph consistency label: assumption_check\nNodes: 46\nEdges: 89\nNode types: {'pr_file': 25, 'link_quality': 7, 'alignment': 3, 'blueprint_finding': 3, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 25, 'comment_chain_touches_file': 24, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 7, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 10, 'source_or_other': 7, 'docs_or_claims': 7, 'not_resolved_or_not_observed': 3, 'blueprint_human_gap_alignment': 3, 'partial blueprint fit': 3, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'human_feedback_general': 1, 'dependency_or_build': 1, 'human_reported_issue_no_linked_fix': 1, 'unlinked_human_feedback': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'not_resolved_or_not_observed': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'unresolved': 4, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "graph-query-motif_query-17e551a0505c02fd", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/unresolved_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: x380kkm/Live2DPet"}, "properties": {"repobilityId": 371394, "scanner": "foundry_dataset", "fingerprint": "4a680545435ee52f9a671cb15d9f971cabc41c7c112c1fc69bab4f21636fec2d", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"human_feedback_general": 2, "unlinked_human_feedback": 2, "thread_needs_classification": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 12, "node_types": {"repo": 1, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "x380kkm/Live2DPet#7", "issue_number": "7", "quality_tiers": {"unresolved": 4}, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-95e0f2909ecfb14f", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#7\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#7\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: x380kkm/Live2DPet#7\nRepo: x380kkm/Live2DPet\nIssue/PR number: 7\nGraph consistency label: needs_more_evidence\nNodes: 12\nEdges: 16\nNode types: {'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 4, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ambiguous_needs_more_evidence': 4, 'human_feedback_general': 2, 'unlinked_human_feedback': 2, 'thread_needs_classification': 2, 'issue_or_pull_request_thread': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'unresolved': 4}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "graph-query-motif_query-480bc4d126cb70c5", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/unresolved_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: x380kkm/Live2DPet"}, "properties": {"repobilityId": 371393, "scanner": "foundry_dataset", "fingerprint": "23af518298043691a70ed22e9beb8a2505ab97e8de2d9a131d14b85ea758481c", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"human_feedback_general": 3, "unlinked_human_feedback": 3, "thread_needs_classification": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 5}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"ambiguous_needs_more_evidence": 10}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 3, "thread_has_comment": 3, "chain_has_link_quality": 5, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 3, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 3}, "node_count": 15, "node_types": {"repo": 1, "thread": 1, "comment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 3}, "query_type": "motif_query", "thread_key": "x380kkm/Live2DPet#6", "issue_number": "6", "quality_tiers": {"unresolved": 5}, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-359532e5306c209b", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#6\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#6\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: x380kkm/Live2DPet#6\nRepo: x380kkm/Live2DPet\nIssue/PR number: 6\nGraph consistency label: needs_more_evidence\nNodes: 15\nEdges: 21\nNode types: {'link_quality': 5, 'comment': 3, 'comment_chain': 3, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 5, 'thread_has_comment': 3, 'thread_has_comment_chain': 3, 'comment_has_chain': 3, 'issue_chain_has_comment_chain': 3, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ambiguous_needs_more_evidence': 5, 'human_feedback_general': 3, 'unlinked_human_feedback': 3, 'thread_needs_classification': 2, 'issue_or_pull_request_thread': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 10}\nQuality tiers: {'unresolved': 5}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "graph-query-motif_query-164c5d3c85b5d1aa", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/unresolved_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: x380kkm/Live2DPet"}, "properties": {"repobilityId": 371392, "scanner": "foundry_dataset", "fingerprint": "029aa28cbfeff2b1c0389597e46d83b1465b0fb3402079d4ed66101e3db5825d", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"human_feedback_general": 3, "unlinked_human_feedback": 3, "thread_needs_classification": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 5}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"ambiguous_needs_more_evidence": 10}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 3, "thread_has_comment": 3, "chain_has_link_quality": 5, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 3, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 3}, "node_count": 15, "node_types": {"repo": 1, "thread": 1, "comment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 3}, "query_type": "motif_query", "thread_key": "x380kkm/Live2DPet#5", "issue_number": "5", "quality_tiers": {"unresolved": 5}, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-6a72059aa81da693", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#5\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#5\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: x380kkm/Live2DPet#5\nRepo: x380kkm/Live2DPet\nIssue/PR number: 5\nGraph consistency label: needs_more_evidence\nNodes: 15\nEdges: 21\nNode types: {'link_quality': 5, 'comment': 3, 'comment_chain': 3, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 5, 'thread_has_comment': 3, 'thread_has_comment_chain': 3, 'comment_has_chain': 3, 'issue_chain_has_comment_chain': 3, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ambiguous_needs_more_evidence': 5, 'human_feedback_general': 3, 'unlinked_human_feedback': 3, 'thread_needs_classification': 2, 'issue_or_pull_request_thread': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 10}\nQuality tiers: {'unresolved': 5}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "graph-query-motif_query-b4a05cbbf0563df0", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/unresolved_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: x380kkm/Live2DPet"}, "properties": {"repobilityId": 371391, "scanner": "foundry_dataset", "fingerprint": "1a76db93d2a5e6a01872eaba48eb6333ad53e33bf1cdd272b6dcf432beb6af26", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"human_feedback_general": 2, "unlinked_human_feedback": 2, "thread_needs_classification": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 12, "node_types": {"repo": 1, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "x380kkm/Live2DPet#4", "issue_number": "4", "quality_tiers": {"unresolved": 4}, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-bf905d847ac1e204", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#4\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#4\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: x380kkm/Live2DPet#4\nRepo: x380kkm/Live2DPet\nIssue/PR number: 4\nGraph consistency label: needs_more_evidence\nNodes: 12\nEdges: 16\nNode types: {'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 4, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ambiguous_needs_more_evidence': 4, 'human_feedback_general': 2, 'unlinked_human_feedback': 2, 'thread_needs_classification': 2, 'issue_or_pull_request_thread': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'unresolved': 4}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "graph-query-motif_query-3a702ad307e4e8a3", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/unresolved_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: x380kkm/Live2DPet"}, "properties": {"repobilityId": 371390, "scanner": "foundry_dataset", "fingerprint": "70837a0f60e3ca49b2168000353a494df4bc2f844b60cd05daa37f4c52bc7436", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"human_feedback_general": 2, "unlinked_human_feedback": 2, "thread_needs_classification": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 4}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"ambiguous_needs_more_evidence": 8}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "chain_has_link_quality": 4, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 12, "node_types": {"repo": 1, "thread": 1, "comment": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 2}, "query_type": "motif_query", "thread_key": "x380kkm/Live2DPet#3", "issue_number": "3", "quality_tiers": {"unresolved": 4}, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-ae465fe250cddcf3", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#3\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#3\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: x380kkm/Live2DPet#3\nRepo: x380kkm/Live2DPet\nIssue/PR number: 3\nGraph consistency label: needs_more_evidence\nNodes: 12\nEdges: 16\nNode types: {'link_quality': 4, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 4, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ambiguous_needs_more_evidence': 4, 'human_feedback_general': 2, 'unlinked_human_feedback': 2, 'thread_needs_classification': 2, 'issue_or_pull_request_thread': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 8}\nQuality tiers: {'unresolved': 4}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "graph-query-motif_query-b1bd1a4ba4d731c7", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/unresolved_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: x380kkm/Live2DPet"}, "properties": {"repobilityId": 371389, "scanner": "foundry_dataset", "fingerprint": "eda5db7b96de97c4dfa27734c9fc2b0fdf5924f05421803a189605e757ef65cc", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"human_feedback_general": 3, "unlinked_human_feedback": 3, "thread_needs_classification": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 5}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"ambiguous_needs_more_evidence": 10}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 21, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 3, "thread_has_comment": 3, "chain_has_link_quality": 5, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 3, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 3}, "node_count": 15, "node_types": {"repo": 1, "thread": 1, "comment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 3}, "query_type": "motif_query", "thread_key": "x380kkm/Live2DPet#2", "issue_number": "2", "quality_tiers": {"unresolved": 5}, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-f3c5c23755e8ab2b", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#2\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#2\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: x380kkm/Live2DPet#2\nRepo: x380kkm/Live2DPet\nIssue/PR number: 2\nGraph consistency label: needs_more_evidence\nNodes: 15\nEdges: 21\nNode types: {'link_quality': 5, 'comment': 3, 'comment_chain': 3, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 5, 'thread_has_comment': 3, 'thread_has_comment_chain': 3, 'comment_has_chain': 3, 'issue_chain_has_comment_chain': 3, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ambiguous_needs_more_evidence': 5, 'human_feedback_general': 3, 'unlinked_human_feedback': 3, 'thread_needs_classification': 2, 'issue_or_pull_request_thread': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 10}\nQuality tiers: {'unresolved': 5}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "graph-query-motif_query-3470ad21310344aa", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/unresolved_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: x380kkm/Live2DPet"}, "properties": {"repobilityId": 357330, "scanner": "foundry_dataset", "fingerprint": "1985b3decccb6bb57cc2046941cfa037307c6730e619a1c7cb2d90b51f3927ff", "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": {"docs_or_claims": 7, "ui_or_frontend": 10, "source_or_other": 7, "api_integration_gap": 1, "dependency_or_build": 1, "partial blueprint fit": 3, "human_feedback_general": 1, "unlinked_human_feedback": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_alignment": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"not_resolved_or_not_observed": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 89, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 25, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 7, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 46, "node_types": {"repo": 1, "thread": 1, "comment": 2, "pr_file": 25, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 2, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "x380kkm/Live2DPet#8", "issue_number": "8", "quality_tiers": {"unresolved": 4, "assumption_check": 3}, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-ac4249d7433fb82d", "graph_gold_label": "assumption_check", "changed_file_labels": {"docs_or_claims": 35, "ui_or_frontend": 50, "source_or_other": 35, "dependency_or_build": 5}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: assumption_check\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#8\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#8\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: x380kkm/Live2DPet#8\nRepo: x380kkm/Live2DPet\nIssue/PR number: 8\nGraph consistency label: assumption_check\nNodes: 46\nEdges: 89\nNode types: {'pr_file': 25, 'link_quality': 7, 'alignment': 3, 'blueprint_finding': 3, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 25, 'comment_chain_touches_file': 24, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 7, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 10, 'source_or_other': 7, 'docs_or_claims': 7, 'not_resolved_or_not_observed': 3, 'blueprint_human_gap_alignment': 3, 'partial blueprint fit': 3, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'human_feedback_general': 1, 'dependency_or_build': 1, 'human_reported_issue_no_linked_fix': 1, 'unlinked_human_feedback': 1, 'ambiguous_needs_more_evidence': 1}\nOutcomes: {'not_resolved_or_not_observed': 6, 'ambiguous_needs_more_evidence': 2}\nQuality tiers: {'unresolved': 4, '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/x380kkm/Live2DPet", "source_id": "graph-query-motif_query-a69e2d778a8216ce", "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": "x380kkm/Live2DPet", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: x380kkm/Live2DPet"}, "properties": {"repobilityId": 313812, "scanner": "foundry_dataset", "fingerprint": "6f70408f968c376a4e5c4a42c95b1f6aa68f39e6ac12c7b190645d1d13b7e9e9", "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": "x380kkm/Live2DPet#9", "human_labels": ["human_feedback_general"], "issue_number": "9", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-4b38a2b2f03cf0e9", "helicopter_views": {}, "artifact_families": {"docs": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 0, "source_artifact_count": 3, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#9\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: x380kkm/Live2DPet#9\nRepo: x380kkm/Live2DPet\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-0a22528ceb78d64c\",\n    \"kind\": \"issue_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/9\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_body\\nRepo: x380kkm/Live2DPet\\nAuthor: x380kkm (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/9\\nTitle: I'm BACK\\nBody:\\n\u8fd1\u671f\u6211\u4f1a\u56de\u5230\u8fd9\u4e2a\u9879\u76ee\u5e76\u8fdb\u884c\u5927\u91cf\u91cd\u6784\uff0c\u4f1a\u628a\u5f53\u524d\u7248\u672c\u6253\u4e2atag\u3002\\n\\n\u4e4b\u524d\u7684tag\u548crelease\u90fd\u6e05\u6389\u3002\u56e0\u4e3a\u5f00\u59cb\u5f00\u53d1\u7684\u65f6\u5019\u6ca1\u6709\u8003\u8651\u5b89\u5168\u95ee\u9898\u3002\u5bf9\u6b64\u9020\u6210\u7684\u4e0d\u4fbf\u8fd8\u8bf7\u8c05\u89e3\u3002\\n\\n\u6709\u9700\u8981\u7684\u7279\u6027\u6b22\u8fce\u7ee7\u7eed\u8ba8\u8bba\u3002\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-45b33db9f440ec0c\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: x380kkm/Live2DPet\nGraph label: source_artifact_without_verification_graph\nNodes: 7\nEdges: 10\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 3, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 3, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 3, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 3}\nHelicopter views: {}\nBundle labels: {\"source_backed_graph_pattern_bundle\": 1}\nCo-occurrence labels: {\"curriculum_gap_cluster\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "comment-chain-pattern-assumption_checks-e0240028f1b85cc9", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: x380kkm/Live2DPet"}, "properties": {"repobilityId": 313811, "scanner": "foundry_dataset", "fingerprint": "3ae620554bb89da2fe034cac164f1cbe4130cfb3ed1e6cbacb0c4c0277c3a3a0", "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": "x380kkm/Live2DPet#7", "human_labels": ["human_feedback_general"], "issue_number": "7", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-88829f728352b349", "helicopter_views": {}, "artifact_families": {"docs": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 0, "source_artifact_count": 3, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#7\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: x380kkm/Live2DPet#7\nRepo: x380kkm/Live2DPet\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 2\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'human_feedback_general': 2}\nPolarities: {'neutral': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-be9748400d94b32e\",\n    \"kind\": \"issue_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/7\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_body\\nRepo: x380kkm/Live2DPet\\nAuthor: Maine-GuGu (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/7\\nTitle: \u53ea\u6709\u65e5\u6587\u97f3\u6e90\uff0c\u60f3\u66f4\u6362\u6210\u56fd\u8bed\u97f3\u6e90\\nBody:\\n\u600e\u4e48\u66f4\u6362\u97f3\u6e90\"\n  },\n  {\n    \"id\": \"github-feedback-comment-f36404f6bbd4f5c3\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/7#issuecomment-3988138191\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: x380kkm/Live2DPet\\nAuthor: x380kkm (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/7#issuecomment-3988138191\\nTitle: \\nBody:\\n\u672c\u7a0b\u5e8f\u67b6\u6784\u7684\u8bed\u8a00\u8f6c\u5bf9\u8bdd\u7684\u6838\u5fc3\u7528\u4e86\u65e5\u7cfb\u7684.\u60f3\u8981\u7528\u56fd\u8bed\u7684\u8bdd\u627e\u66f4\u5e38\u89c1/\u901a\u7528\u7684app\u5427\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-33d89b98f1d71402\", \"evidence-chain-comment_to_commit-918010822a4489b8\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: x380kkm/Live2DPet\nGraph label: source_artifact_without_verification_graph\nNodes: 7\nEdges: 10\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 3, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 3, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 3, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 3}\nHelicopter views: {}\nBundle labels: {\"source_backed_graph_pattern_bundle\": 1}\nCo-occurrence labels: {\"curriculum_gap_cluster\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "comment-chain-pattern-assumption_checks-f203f91c9b5e0a42", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: x380kkm/Live2DPet"}, "properties": {"repobilityId": 313810, "scanner": "foundry_dataset", "fingerprint": "94b9f44069354f390c01c1a7b24a3af4877fe0b6c2584c968317cb8a54c2c9bd", "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": "x380kkm/Live2DPet#6", "human_labels": ["human_feedback_general"], "issue_number": "6", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-2c731d50b365a368", "helicopter_views": {}, "artifact_families": {"docs": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 0, "source_artifact_count": 3, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#6\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: x380kkm/Live2DPet#6\nRepo: x380kkm/Live2DPet\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 3\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'human_feedback_general': 3}\nPolarities: {'neutral': 3}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-5e7a791c6f1ea596\",\n    \"kind\": \"issue_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/6\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_body\\nRepo: x380kkm/Live2DPet\\nAuthor: ahi-09 (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/6\\nTitle: \u5173\u4e8evoicevox\u65e0\u6cd5\u9009\u62e9\u89d2\u8272\u7684\u95ee\u9898\\nBody:\\n<img width=\\\"746\\\" height=\\\"940\\\" alt=\\\"Image\\\" src=\\\"https://github.com/user-attachments/assets/ee755003-1589-440f-9d29-bd5ac78e56ef\\\" />\\n<img width=\\\"753\\\" height=\\\"939\\\" alt=\\\"Image\\\" src=\\\"https://github.com/user-attachments/assets/ff671867-7910-4efb-a40c-dd3b202ce24a\\\" />\\n<img width=\\\"751\\\" height=\\\"938\\\" alt=\\\"Image\\\" src=\\\"https://github.com/user-attachments/assets/70efa481-51c3-4ce5-a9da-be1d4d2e918b\\\" />\\n\u5982\u4e0a\u56fe\u6240\u793a\uff0c\u89d2\u8272\u9009\u62e9\u4e0estyle\u9009\u62e9\u4e24\u680f\u4e0d\u53ef\u7528\uff0c\u70b9\u51fb\u751f\u6210\u9ed8\u8ba4\u97f3\u58f0\u540e\u663e\u793a\u201c\u5b8c\u6210\uff1a0/5\u4e2a\u53ef\u7528\u201d\"\n  },\n  {\n    \"id\": \"github-feedback-comment-5cd8fc0918be636a\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/6#issuecomment-3977106341\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: x380kkm/Live2DPet\\nAuthor: x380kkm (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/6#issuecomment-3977106341\\nTitle: \\nBody:\\n\u5c1d\u8bd5\u6302\u68af\u5b50\u7136\u540e\u4e0b\u8f7d\u65b0\u7684model,\u6253\u52fe,\u4fdd\u5b58\u5e76\u91cd\u542f\u770b\u770b.\\n\u9ed8\u8ba4\u662f\u9009\u62e9\u89d2\u8272\u540e\u751f\u6210\u9ed8\u8ba4\u97f3\u58f0.\"\n  },\n  {\n    \"id\": \"github-feedback-comment-c0b5a3605a333092\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/6#issuecomment-3988145838\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: x380kkm/Live2DPet\\nAuthor: x380kkm (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/6#issuecomment-3988145838\\nTitle: \\nBody:\\n\u5982\u679c\u540e\u7eed\u8fd8\u6709\u60c5\u51b5\u7684\u8bdd\u9ebb\u70e6\u65b0\u5f00\u4e00\u4e2aissue\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-bb252264f6413cfd\", \"evidence-chain-comment_to_commit-5195c2df82ef604f\", \"evidence-chain-comment_to_commit-74ea1d15b1e0ae5f\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: x380kkm/Live2DPet\nGraph label: source_artifact_without_verification_graph\nNodes: 7\nEdge\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "comment-chain-pattern-assumption_checks-cdc3a74d9d1261e9", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: x380kkm/Live2DPet"}, "properties": {"repobilityId": 313809, "scanner": "foundry_dataset", "fingerprint": "cc706d99b7d29e1ef9118a5e0c5e3e9641071fb1420a2afe8c7ea01e7209af3e", "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": "x380kkm/Live2DPet#5", "human_labels": ["human_feedback_general"], "issue_number": "5", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-c4a8fe05c4e4423c", "helicopter_views": {}, "artifact_families": {"docs": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 0, "source_artifact_count": 3, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#5\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: x380kkm/Live2DPet#5\nRepo: x380kkm/Live2DPet\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 3\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'human_feedback_general': 3}\nPolarities: {'neutral': 3}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-2cd8e024c88be0a9\",\n    \"kind\": \"issue_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/5\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_body\\nRepo: x380kkm/Live2DPet\\nAuthor: ahi-09 (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/5\\nTitle: \u5173\u4e8e\u65e5\u6c49\u8bed\u53e5\u4e0d\u540c\u4e49\u7684\u95ee\u9898\\nBody:\\n\u5982\u679c\u9009\u62e9\u4e2d\u6587\uff0c\u5219\u8bed\u97f3\u64ad\u653e\u7684\u65e5\u8bed\u4e0e\u4e2d\u6587\u610f\u4e49\u4e0d\u540c\u3002\uff08\u5ff5\u7684\u662f\u6742\u9c7c\u6b27\u5c3c\u9171\u4f46\u5b57\u5e55\u662f\u5b9d\u8d1d\u771f\u7684\u5f88\u96be\u7ef7\u4f4f\uff09\\n\u5982\u679c\u9009\u62e9\u65e5\u8bed\uff0c\u5219\u8bed\u97f3\u64ad\u653e\u5185\u5bb9\u4e0e\u5b57\u5e55\u5185\u5bb9\u4e0d\u540c\u3002\\n\u4f46\u6700\u4e25\u5cfb\u7684\u95ee\u9898\u662f\uff0c\u5076\u5c14\u4f1a\u51fa\u73b0\u7528\u65e5\u8bed\u6c49\u5b57\u5ff5\u6cd5\u6717\u8bfb\u4e2d\u6587\u8bed\u53e5\u4e2d\u53ef\u8bfb\u7684\u6c49\u5b57\u5e76\u5ffd\u7565\u4e0d\u53ef\u8bfb\u6c49\u5b57\u7684\u60c5\u51b5\uff0c\u8868\u73b0\u4e3a\u77ed\u4fc3\u7684\u3001\u95f4\u9694\u65f6\u95f4\u957f\u7684\u6c49\u5b57\u53d1\u97f3\uff0c\u6781\u5176\u7834\u574f\u542c\u611f\u3002\u5373\u4f7f\u5bf9\u4e8e\u4e0d\u4f1a\u65e5\u8bed\u7684\u7528\u6237\u800c\u8a00\u4e5f\u96be\u4ee5\u5ffd\u89c6\u3002\"\n  },\n  {\n    \"id\": \"github-feedback-comment-bf58b1f156fc6c6d\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/5#issuecomment-3972369658\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: x380kkm/Live2DPet\\nAuthor: x380kkm (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/5#issuecomment-3972369658\\nTitle: \\nBody:\\n\u7ffb\u8bd1api\u7528\u4e86\u5f15\u5bfc\u5bfc\u81f4\u7684\\n\u65e5\u8f6c\u65e5\u8fd9\u4e2a\u662f\u56e0\u4e3avov\u5ff5\u82f1\u8bed\u4f1a\u9010\u5b57\u6bcd\u65e0\u6cd5\u63a5\u53d7\u3002\\n\u77ed\u671f\u89e3\u51b3\u65b9\u6848\u53ef\u4ee5\u81ea\u5df1\u62c9\u4e0b\u6765\u6539\u7ffb\u8bd1api\u7684\u5f15\u5bfc\u6216\u8005\u6362\u7ffb\u8bd1\u670d\u52a1\u7684\u63d0\u4f9b\u8005\\n\u6216\u8005\u7b49\u62112\u4e2a\u6708\u5de6\u53f3\u6709\u7a7a\u540e\u4f1a\u4fee\u3002\"\n  },\n  {\n    \"id\": \"github-feedback-comment-301bb4ffb13d7819\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/5#issuecomment-3988143152\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: x380kkm/Live2DPet\\nAuthor: x380kkm (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/5#issuecomment-3988143152\\nTitle: \\nBody:\\n\u5c1d\u8bd5\u8fdb\u884c\u4e86\u4e00\u5b9a\u7a0b\u5ea6\u7684\u4fee\u590d,\\n\u4ee5\u53ca\u4e0a\u8ff0\u95ee\u9898\u786e\u5b9e\u53ef\u4ee5\u901a\u8fc7\u5347\u7ea7\u7ffb\u8bd1api\u6765\u8fdb\u884c\u7f13\u89e3\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-5b20622e07d5a5e1\", \"evidence-chain-comment_to_commit-ec0b5a0bf9b12560\", \"evidence-chain-comment_to_commit-05034d6882c97d9b\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: x380kkm/Live2DPet\nGraph label: source_artifact_without_verification_graph\nNodes: 7\nEdges: 10\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 3, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 3, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "comment-chain-pattern-assumption_checks-05bee368c8c4d30b", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: x380kkm/Live2DPet"}, "properties": {"repobilityId": 313808, "scanner": "foundry_dataset", "fingerprint": "5ccb65e9b46a4d5dbb6ec092fcb58690796a43ab5b629e38129f039895f0bfbf", "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": "x380kkm/Live2DPet#4", "human_labels": ["human_feedback_general"], "issue_number": "4", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-5819d392996e7b80", "helicopter_views": {}, "artifact_families": {"docs": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 0, "source_artifact_count": 3, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#4\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: x380kkm/Live2DPet#4\nRepo: x380kkm/Live2DPet\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 2\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'human_feedback_general': 2}\nPolarities: {'neutral': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-a2f7cd2a708d0b6a\",\n    \"kind\": \"issue_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/4\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_body\\nRepo: x380kkm/Live2DPet\\nAuthor: clamsand (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/4\\nTitle: \u53ef\u4ee5\u7ed9\u51favvm\u6a21\u578b\u7684\u5355\u72ec\u4e0b\u8f7d\u94fe\u63a5\u5417\u3002\\nBody:\\n\u53ef\u4ee5\u7ed9\u51favvm\u6a21\u578b\u7684\u5355\u72ec\u4e0b\u8f7d\u94fe\u63a5\u5417\u3002\u6211\u8fd9\u8fb9\u4e00\u76f4\u5185\u7f6e\u7684\u4e0b\u8f7d\u5931\u8d25\u3002\u60f3\u81ea\u5df1\u7528\u5176\u4ed6\u8f6f\u4ef6\u8fdb\u884c\u4e0b\u8f7d\u3002\"\n  },\n  {\n    \"id\": \"github-feedback-comment-b1d20c0459bac19c\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/4#issuecomment-3971367089\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: x380kkm/Live2DPet\\nAuthor: clamsand (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/4#issuecomment-3971367089\\nTitle: \\nBody:\\n\u7b28\u529e\u6cd5\u3002\\nhttps://github.com/VOICEVOX/voicevox_engine/releases\\n\u53ef\u4ee5\u8fd9\u91cc\u4e0b\u8f7d\u3002\u7136\u540e\u4eceVOX\u7684model\u6587\u4ef6\u5939\u62f7\u8d1d\u5230\u8f6f\u4ef6\u7684appdata\u91cc\u7684model\u5c31\u53ef\u4ee5\u4e86\u3002\\n\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-fd004700b2e19aec\", \"evidence-chain-comment_to_commit-0cbc99b48b47c487\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: x380kkm/Live2DPet\nGraph label: source_artifact_without_verification_graph\nNodes: 7\nEdges: 10\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 3, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 3, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 3, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 3}\nHelicopter views: {}\nBundle labels: {\"source_backed_graph_pattern_bundle\": 1}\nCo-occurrence labels: {\"curriculum_gap_cluster\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "comment-chain-pattern-assumption_checks-77e6a7f1a7b53d71", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: x380kkm/Live2DPet"}, "properties": {"repobilityId": 313807, "scanner": "foundry_dataset", "fingerprint": "81d632808e554e01072680535e72b3a568b4c98070fcf95847bdf738d7167343", "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": "x380kkm/Live2DPet#3", "human_labels": ["human_feedback_general"], "issue_number": "3", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-9f6d9de0b366686d", "helicopter_views": {}, "artifact_families": {"docs": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 0, "source_artifact_count": 3, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#3\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: x380kkm/Live2DPet#3\nRepo: x380kkm/Live2DPet\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 2\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'human_feedback_general': 2}\nPolarities: {'neutral': 2}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-c05f0aef5813adc3\",\n    \"kind\": \"issue_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/3\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_body\\nRepo: x380kkm/Live2DPet\\nAuthor: jedzqer (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/3\\nTitle: \u8bf7\u6c42\u5bf9\u8bdd\u529f\u80fd\\nBody:\\n\u9879\u76ee\u5f88\u597d\uff0c\u4f46\u662f\u5c45\u7136\u4e0d\u80fd\u548c\u684c\u5ba0\u5bf9\u8bdd\uff0c\u54ea\u6015\u662f\u52a0\u4e2a\u804a\u5929\u6846\u4e5f\u597d\u554a\"\n  },\n  {\n    \"id\": \"github-feedback-comment-e6e924171a54ad52\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/3#issuecomment-3949752509\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: x380kkm/Live2DPet\\nAuthor: x380kkm (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/3#issuecomment-3949752509\\nTitle: \\nBody:\\n\u56e0\u4e3a\u6211\u81ea\u5df1\u7528\u4e0d\u5230\u6240\u4ee5\u6ca1\u6709\u5728\u8fd9\u4e2a\u7248\u672c\u52a0\\n\u6709\u9700\u6c42\u7684\u4e5f\u53ef\u4ee5\u770b\u770b\u522b\u7684\u7c7b\u4f3c\u9879\u76ee\u3002open-llm-vtuber\u90a3\u8fb9\u5e94\u8be5\u6709\u58f0\u97f3\u4ea4\u6d41\u7684\u652f\u6301\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-d3b92ba68546a02e\", \"evidence-chain-comment_to_commit-e62bfeedd83e72d6\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: x380kkm/Live2DPet\nGraph label: source_artifact_without_verification_graph\nNodes: 7\nEdges: 10\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 3, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 3, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 3, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 3}\nHelicopter views: {}\nBundle labels: {\"source_backed_graph_pattern_bundle\": 1}\nCo-occurrence labels: {\"curriculum_gap_cluster\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "comment-chain-pattern-assumption_checks-a54530d20cbc5c85", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: x380kkm/Live2DPet"}, "properties": {"repobilityId": 313806, "scanner": "foundry_dataset", "fingerprint": "7c3af6d31732e1b5540264d13669a7959a569b57e8c650059194462184ede1bb", "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": "x380kkm/Live2DPet#2", "human_labels": ["human_feedback_general"], "issue_number": "2", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-157f6c2944349c30", "helicopter_views": {}, "artifact_families": {"docs": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 0, "source_artifact_count": 3, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#2\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: x380kkm/Live2DPet#2\nRepo: x380kkm/Live2DPet\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 3\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'human_feedback_general': 3}\nPolarities: {'neutral': 3}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-0b181012e9ccdc37\",\n    \"kind\": \"issue_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/2\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_body\\nRepo: x380kkm/Live2DPet\\nAuthor: saltysalrua (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/2\\nTitle: \u5173\u4e8elive2d\u7684\u4e00\u4e9b\u95ee\u9898\\nBody:\\n\u9996\u5148\u8fd8\u662f\u5f97\u5938\u4e0b\u505a\u7684\u597d\u7684\uff0c\u4f46\u73b0\u5728\u6211\u5728\u7528live2d\u8fd9\u5757\u53d1\u73b0\u4e86\u51e0\u4e2a\u95ee\u9898\\n\u9996\u5148\u5c31\u662f\u6211\u662f\u4ecelive2dviewerex\u4e0a\u627e\u7684\uff0c\u89e3\u538b\u51fa\u6765\u662flpk\u6587\u4ef6\uff0c\u76ee\u524d\u597d\u50cf\u4e0d\u652f\u6301lpk\uff1f\u867d\u7136\u89e3\u538b\u4e86\u4e5f\u80fd\u7528\\n\u7136\u540e\u5c31\u662f\u6211lpk\u89e3\u538b\u51fa\u7684\u6587\u4ef6\u7528\u7684\u662fmodel.json\uff0c\u867d\u7136\u6539\u6210.model3.json\u5c31\u80fd\u7528\u4e86\\n\\n\u6700\u540e\u5c31\u662f\u6700\u91cd\u8981\u7684\u4e00\u70b9\u4e86\uff0clive2d\u7684\u52a8\u4f5c\u4f1a\u89e6\u53d1\u5bf9\u5e94\u7684\u58f0\u97f3\u6587\u4ef6\uff0c\u4f1a\u548ctts\u7684\u58f0\u97f3\u4e00\u8d77\u51fa\u6765\uff0c\u76ee\u524d\u53ea\u80fd\u624b\u52a8\u6539json\u4e86\"\n  },\n  {\n    \"id\": \"github-feedback-comment-73f2444b2dca9c7c\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/2#issuecomment-3939291202\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: x380kkm/Live2DPet\\nAuthor: w23x0 (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/2#issuecomment-3939291202\\nTitle: \\nBody:\\n\u8bf7\u95eecanvas y \u5982\u4f55\u518d\u5927\u4e00\u70b9\uff0c\u88c5\u4e0b4096\u7684\u6a21\u578b\"\n  },\n  {\n    \"id\": \"github-feedback-comment-e9451e7632e3d841\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/issues/2#issuecomment-3945377671\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: x380kkm/Live2DPet\\nAuthor: x380kkm (User)\\nURL: https://github.com/x380kkm/Live2DPet/issues/2#issuecomment-3945377671\\nTitle: \\nBody:\\n\u6211\u53ea\u7528\u4e86\u81ea\u5df1\u7684\u6a21\u578b\u505a\u6d4b\u8bd5\u6240\u4ee5\u5f88\u591a\u95ee\u9898\u6ca1\u60f3\u5230~\\n\\n\u786e\u5b9e\u662f\u76f4\u63a5\u7528\u6587\u4ef6\u5939\u91cc\u7ffbjson\u7684\u65b9\u5f0f\u6765\u505a\u7684.\\ncanvasy\u8fd9\u4e2a\u95ee\u9898 \u5982\u679c\u662f\u957f\u6216\u5bbd\u9700\u8981\u8c03\u6574\u7684\u8bdd. \u6709\u4e00\u4e2a\u5ba0\u7269\u6709\u4e00\u4e2a\u9690\u85cf\u7684canvas\u53ef\u4ee5\u62d6\u62fd \u80fd\u62d6\u62fd\u5230\u7684\u5730\u65b9\u4f1a\u663e\u793a. \u62d6\u62fd\u4e00\u4e0b\u5c31\u597d\u4e86.\\n\\n\u8fd9\u4e2a/\u8fd9\u4e9bissue\u5148\u6302\u7740\u5427.\u8fd9\u8fb9\u5f85\u4e1a\u5728\u5bb6\u6682\u65f6\u6ca1\u7cbe\u529b\u6295\u5165.\u6ca1\u5931\u4e1a\u7684\u8bdd\u627e\u5230\u5de5\u4f5c\u5c31\u56de\u6765\u641e.\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-f92907e509307042\", \"evidence-chain-comment_to_commit-e017d31c40b4a057\", \"evidence-chain-comment_to_commit-e35f32817bb3374f\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: x380kkm/Live2DPet\nGraph label: source_artifact_without_verification_graph\nNodes: 7\nEdges: 10\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 3, \"source_bundle\": 1}\nEdge types: {\"art\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "comment-chain-pattern-assumption_checks-1a2505164173ad4d", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: x380kkm/Live2DPet"}, "properties": {"repobilityId": 323858, "scanner": "foundry_dataset", "fingerprint": "e78fae0302d4e5eac8b969220f2ad4e27db7f5d2e2e27854c33416c4d4433365", "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": "x380kkm/Live2DPet#8", "human_labels": ["api_integration_gap", "dependency_or_build", "docs_or_claims", "human_feedback_general", "source_or_other", "ui_or_frontend"], "issue_number": "8", "thread_label": "thread_has_human_issue_without_fix_context", "outcome_label": "not_resolved_or_not_observed", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "x380kkm/Live2DPet", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-e6caaf107b72706d", "helicopter_views": {}, "artifact_families": {"docs": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 25, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"docs_or_claims": 7, "ui_or_frontend": 10, "source_or_other": 7, "dependency_or_build": 1}, "linked_commit_count": 0, "helicopter_view_count": 0, "source_artifact_count": 3, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_unresolved", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: bad_chains\nRepo: x380kkm/Live2DPet\nThread: x380kkm/Live2DPet#8\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_unresolved, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: x380kkm/Live2DPet#8\nRepo: x380kkm/Live2DPet\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 2\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 25\nLabels: {'api_integration_gap': 1, 'human_feedback_general': 1}\nPolarities: {'bad': 1, 'neutral': 1}\nChanged file labels: {'source_or_other': 7, 'docs_or_claims': 7, 'dependency_or_build': 1, 'ui_or_frontend': 10}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-8efee9572902f0b4\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/pull/8\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: x380kkm/Live2DPet\\nAuthor: dwgx (User)\\nURL: https://github.com/x380kkm/Live2DPet/pull/8\\nTitle: feat: Add Whisper local STT and long-term memory system\\nBody:\\n## \u65b0\u589e\u529f\u80fd / New Features\\n\\n### \ud83c\udfa4 Whisper \u672c\u5730\u8bed\u97f3\u8bc6\u522b\\n- \u4f7f\u7528 Whisper.cpp \u5b9e\u73b0\u9ad8\u8d28\u91cf\u672c\u5730\u8bed\u97f3\u8bc6\u522b\\n- \u652f\u6301 GPU \u52a0\u901f\uff08CUDA/DirectML\uff09\\n- \u652f\u6301\u591a\u79cd\u6a21\u578b\u5927\u5c0f\u9009\u62e9\uff08tiny/base/small/medium/large\uff09\\n- \u5b8c\u5168\u79bb\u7ebf\u8fd0\u884c\uff0c\u65e0\u9700\u5916\u90e8 API\\n- \u9ea6\u514b\u98ce\u8bbe\u5907\u9009\u62e9\\n- \u5b9e\u65f6\u97f3\u91cf\u53ef\u89c6\u5316\\n- \u81ea\u52a8\u8fde\u7eed\u76d1\u542c\u6a21\u5f0f\\n\\n### \ud83e\udde0 \u957f\u671f\u8bb0\u5fc6\u7cfb\u7edf\\n- AI \u4f1a\u8bb0\u4f4f\u6240\u6709\u5bf9\u8bdd\u5386\u53f2\\n- \u81ea\u52a8\u63d0\u53d6\u5173\u952e\u8bcd\u5e76\u5efa\u7acb\u7d22\u5f15\\n- \u667a\u80fd\u68c0\u7d22\u76f8\u5173\u5386\u53f2\u5bf9\u8bdd\\n- \u5b8c\u5168\u672c\u5730\u5b58\u50a8\uff08localStorage\uff09\\n- \u652f\u6301\u5bfc\u51fa/\u5bfc\u5165 JSON\\n- \u8bb0\u5fc6\u7ba1\u7406 UI\\n- \u53ef\u914d\u7f6e\u7684\u77ed\u671f/\u957f\u671f\u8bb0\u5fc6\u5927\u5c0f\\n\\n### \ud83c\udfa8 \u5176\u4ed6\u6539\u8fdb\\n- \u589e\u5f3a\u8bed\u97f3\u8f93\u5165 UI\\n- \u591a\u8bed\u8a00\u652f\u6301\uff08\u4e2d\u6587\u3001\u82f1\u6587\u3001\u65e5\u6587\uff09\\n- \u4e00\u952e\u542f\u52a8\u811a\u672c\uff08\u542f\u52a8.bat\uff09\\n- FFmpeg \u96c6\u6210\u7528\u4e8e\u97f3\u9891\u8f6c\u6362\\n- \u4fee\u590d\u591a\u4e2a JS \u9519\u8bef\\n- \u5b8c\u5584\u7684\u914d\u7f6e\u7ba1\u7406\\n\\n## \u6280\u672f\u7ec6\u8282 / Technical Details\\n\\n- **Whisper.cpp**: AVX2 CPU \u4f18\u5316 + GPU \u52a0\u901f\\n- **FFmpeg**: WebM \u5230 WAV \u97f3\u9891\u8f6c\u6362\uff08\u9700\u5355\u72ec\u4e0b\u8f7d\uff09\\n- **\u8bb0\u5fc6\u7cfb\u7edf**: \u5173\u952e\u8bcd\u63d0\u53d6 + TF-IDF \u76f8\u4f3c\u5ea6\u641c\u7d22\\n- **\u5b58\u50a8**: localStorage\uff08\u65e0\u9700\u5916\u90e8\u6570\u636e\u5e93\uff09\\n- **\u914d\u7f6e**: \u5b8c\u6574\u7684 config-manager \u652f\u6301\\n\\n## \u4f7f\u7528\u8bf4\u660e / Usage\\n\\n\u8be6\u7ec6\u4f7f\u7528\u8bf4\u660e\u8bf7\u67e5\u770b\uff1a\\n- [FEATURES.md](./FEATURES.md) - \u529f\u80fd\u8be6\u89e3\\n- [CHECKLIST.md](./CHECKLIST.md) - \u5feb\u901f\u68c0\u67e5\u6e05\u5355\\n- [CONTRIBUTING.md](./CONTRIBUTING.md) - \u8d21\u732e\u6307\u5357\\n\\n## \u6d4b\u8bd5 / Testing\\n\\n- \u2705 Whisper \u8bed\u97f3\u8bc6\u522b\u6b63\u5e38\u5de5\u4f5c\\n- \u2705 \u8bb0\u5fc6\u7cfb\u7edf\u6b63\u5e38\u4fdd\u5b58\u548c\u68c0\u7d22\\n- \u2705 \u591a\u8bed\u8a00\u754c\u9762\u6b63\u5e38\u663e\u793a\\n- \u2705 \u4e00\u952e\u542f\u52a8\u811a\u672c\u6b63\u5e38\u8fd0\u884c\\n- \u2705 \u914d\u7f6e\u6301\u4e45\u5316\u6b63\u5e38\\n\\n## \u6ce8\u610f\u4e8b\u9879 / Notes\\n\\n- FFmpeg \u4e8c\u8fdb\u5236\u6587\u4ef6\u56e0\u4f53\u79ef\u8fc7\u5927\u672a\u5305\u542b\u5728\u4ed3\u5e93\u4e2d\\n- \u7528\u6237\u9700\u8981\u4ece https://ffmpeg.org/download.html \u4e0b\u8f7d FFmpe\"\n  },\n  {\n    \"id\": \"github-feedback-comment-21b147fc97fd0d8b\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/x380kkm/Live2DPet/pull/8#issuecomment-4017820372\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: x380kkm/Live2DPet\\nAuthor: dwgx (User)\\nURL: https://github.com/x380kkm/Live2DPet/pull/8#issuecomment-4017820372\\nTitle: \\nBody:\\nSorry, found bugs. Will fix and resubmit.\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-04c08b4580dae937\",\n    \"filename\": \".gitignore\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/x380kkm/Live2DPet", "source_id": "comment-chain-pattern-bad_chains-8671beeba69df1d9", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "x380kkm/Live2DPet", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "scanner-b0ab97b6de335343", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 main.js:104"}, "properties": {"repobilityId": "4a2f610e5e3afce9", "scanner": "scanner-primary", "fingerprint": "b0ab97b6de335343", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4b2de7599c15d942", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 libs/pixi.min.js:492"}, "properties": {"repobilityId": "9ba83167937e4a87", "scanner": "scanner-primary", "fingerprint": "4b2de7599c15d942", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f6e7553d1bb1c2c3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 libs/cubism4.min.js:1"}, "properties": {"repobilityId": "cf90e1cce33adf9f", "scanner": "scanner-primary", "fingerprint": "f6e7553d1bb1c2c3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fd9015d2f215929f", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 src/renderer/settings-ui.js:598"}, "properties": {"repobilityId": "1761ecdb51ea6299", "scanner": "scanner-primary", "fingerprint": "fd9015d2f215929f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-fc4a1c4007603760", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/renderer/settings-ui.js:53"}, "properties": {"repobilityId": "5bddabb03ad02964", "scanner": "scanner-primary", "fingerprint": "fc4a1c4007603760", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4cd0cabf10210ab6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/renderer/model-adapter.js:153"}, "properties": {"repobilityId": "62d42296dbb06723", "scanner": "scanner-primary", "fingerprint": "4cd0cabf10210ab6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f760fe55b81fc872", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/core/emotion-system.js:124"}, "properties": {"repobilityId": "e11502eba7ce3f09", "scanner": "scanner-primary", "fingerprint": "f760fe55b81fc872", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6c606aaf7de3320e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/core/desktop-pet-system.js:80"}, "properties": {"repobilityId": "f20797577037a5d1", "scanner": "scanner-primary", "fingerprint": "6c606aaf7de3320e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ceffe97d09b32cf3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/core/tts-service.js:102"}, "properties": {"repobilityId": "b4570bc4bf68f8f3", "scanner": "scanner-primary", "fingerprint": "ceffe97d09b32cf3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ec2809d68422aebe", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/core/prompt-builder.js:39"}, "properties": {"repobilityId": "38b3aab26d5c4058", "scanner": "scanner-primary", "fingerprint": "ec2809d68422aebe", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e89b63d3a5f1802a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/core/message-session.js:74"}, "properties": {"repobilityId": "bf4ec7033821bca5", "scanner": "scanner-primary", "fingerprint": "e89b63d3a5f1802a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d43ee3dd219a857b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/core/ai-chat.js:18"}, "properties": {"repobilityId": "93d09453a068e3ba", "scanner": "scanner-primary", "fingerprint": "d43ee3dd219a857b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0e37101446226f52", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/core/enhance/vlm-extractor.js:82"}, "properties": {"repobilityId": "0e13b06da5439072", "scanner": "scanner-primary", "fingerprint": "0e37101446226f52", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-105c19de6e656327", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/core/enhance/memory-tracker.js:24"}, "properties": {"repobilityId": "2e3e1a4e1ea50f92", "scanner": "scanner-primary", "fingerprint": "105c19de6e656327", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-78e8dc361ad4b2d2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/core/enhance/knowledge-acquisition.js:46"}, "properties": {"repobilityId": "1085f22eaf32d683", "scanner": "scanner-primary", "fingerprint": "78e8dc361ad4b2d2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7aa8e98b64f46571", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/core/enhance/enhancement-orchestrator.js:29"}, "properties": {"repobilityId": "ec92684cd2254b9a", "scanner": "scanner-primary", "fingerprint": "7aa8e98b64f46571", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ca86c977cc74cbf9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/core/enhance/knowledge-store.js:64"}, "properties": {"repobilityId": "6b54ff791dcc321c", "scanner": "scanner-primary", "fingerprint": "ca86c977cc74cbf9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b3dfc5895d6ae42e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/main/character-manager.js:59"}, "properties": {"repobilityId": "46acfccb1470e541", "scanner": "scanner-primary", "fingerprint": "b3dfc5895d6ae42e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d527de921a9d0fba", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/main/emotion-ipc.js:8"}, "properties": {"repobilityId": "9b5e6449fe99b900", "scanner": "scanner-primary", "fingerprint": "d527de921a9d0fba", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-70909e6ea9dcc8de", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/main/enhance-ipc.js:106"}, "properties": {"repobilityId": "3032c9018534d5ab", "scanner": "scanner-primary", "fingerprint": "70909e6ea9dcc8de", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4552df98e49c1a53", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/main/tts-ipc.js:93"}, "properties": {"repobilityId": "99594ebbd3c8238a", "scanner": "scanner-primary", "fingerprint": "4552df98e49c1a53", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9710c8d059e53154", "level": "none", "message": {"text": "No frontend routes/components detected"}, "properties": {"repobilityId": "44ca61485762e494", "scanner": "scanner-primary", "fingerprint": "9710c8d059e53154", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-8c59fc2e68905270", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in launch.js:5"}, "properties": {"repobilityId": "87593aa6a296f2af", "scanner": "scanner-primary", "fingerprint": "8c59fc2e68905270", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "launch.js"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-182bbf4ad78a6181", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in debug.js:8"}, "properties": {"repobilityId": "356b0cf206ce4eb4", "scanner": "scanner-primary", "fingerprint": "182bbf4ad78a6181", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "debug.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-adc946aeb36f2818", "level": "error", "message": {"text": "Insecure pattern 'new_function_used' in libs/pixi.min.js:302"}, "properties": {"repobilityId": "9060a778c19b080d", "scanner": "scanner-primary", "fingerprint": "adc946aeb36f2818", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["owasp", "new_function_used"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "libs/pixi.min.js"}, "region": {"startLine": 302}}}]}, {"ruleId": "scanner-0b3257269efd83eb", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in libs/pixi.min.js:869"}, "properties": {"repobilityId": "ecbf2073aa052f65", "scanner": "scanner-primary", "fingerprint": "0b3257269efd83eb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "libs/pixi.min.js"}, "region": {"startLine": 869}}}]}, {"ruleId": "scanner-af323d17b3083bdd", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/renderer/settings-ui.js:342"}, "properties": {"repobilityId": "10f133c7c4c2efc6", "scanner": "scanner-primary", "fingerprint": "af323d17b3083bdd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/renderer/settings-ui.js"}, "region": {"startLine": 342}}}]}, {"ruleId": "scanner-c3de22e7b370b072", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in src/main/tts-ipc.js:175"}, "properties": {"repobilityId": "61d09ad81d93a017", "scanner": "scanner-primary", "fingerprint": "c3de22e7b370b072", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/main/tts-ipc.js"}, "region": {"startLine": 175}}}]}, {"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-4601e3ad3bb28677", "level": "warning", "message": {"text": "No CI/CD pipelines detected"}, "properties": {"repobilityId": "c3ee439bce2bc51e", "scanner": "scanner-primary", "fingerprint": "4601e3ad3bb28677", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-4dad83673fc616cc", "level": "note", "message": {"text": "Very large file: tests/test-enhance.js (1784 lines)"}, "properties": {"repobilityId": "dc010dd5f0fa4018", "scanner": "scanner-primary", "fingerprint": "4dad83673fc616cc", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-497f48af4ae914ba", "level": "note", "message": {"text": "Very large file: libs/pixi.min.js (1108 lines)"}, "properties": {"repobilityId": "5fd45934c0f03a6e", "scanner": "scanner-primary", "fingerprint": "497f48af4ae914ba", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-05bf42a49586789f", "level": "note", "message": {"text": "Very large file: src/renderer/settings-ui.js (1290 lines)"}, "properties": {"repobilityId": "c2a6828fe94aa055", "scanner": "scanner-primary", "fingerprint": "05bf42a49586789f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ea3b5e389d8c9c0f", "level": "note", "message": {"text": "Low test-to-source ratio"}, "properties": {"repobilityId": "ef7b2552cc00a375", "scanner": "scanner-primary", "fingerprint": "ea3b5e389d8c9c0f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["tests"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "6c731bae1014b962", "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": "652a4b07d1d91038", "scanner": "scanner-primary", "fingerprint": "72b2a6250083a784", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "incomplete", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "c192323e13599540", "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": "5c22f98a74c4624f", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-95c907024bee6591", "level": "none", "message": {"text": "Commented-code block (6 lines) in debug.js:2"}, "properties": {"repobilityId": "2424fcdb64124101", "scanner": "scanner-primary", "fingerprint": "95c907024bee6591", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-91889b9b45c1024c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 libs/live2dcubismcore.min.js:9"}, "properties": {"repobilityId": "24707807789d6118", "scanner": "scanner-primary", "fingerprint": "91889b9b45c1024c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7c6b5fdaaf43c6ff", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 libs/pixi.min.js:7"}, "properties": {"repobilityId": "c67c0770b3ed326a", "scanner": "scanner-primary", "fingerprint": "7c6b5fdaaf43c6ff", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-4b8391a315994bc4", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/renderer/model-adapter.js:140"}, "properties": {"repobilityId": "769aad0f733ef5fe", "scanner": "scanner-primary", "fingerprint": "4b8391a315994bc4", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e9c5d643953fe8d5", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/core/prompt-builder.js:47"}, "properties": {"repobilityId": "7eb98a011cd43276", "scanner": "scanner-primary", "fingerprint": "e9c5d643953fe8d5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-6a27232523398e69", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/core/enhance/vlm-extractor.js:132"}, "properties": {"repobilityId": "14c38f44c00d6826", "scanner": "scanner-primary", "fingerprint": "6a27232523398e69", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f33aab50ed201c5f", "level": "note", "message": {"text": "Legacy-named symbol `weeksOld` in src/core/enhance/knowledge-acquisition.js:256"}, "properties": {"repobilityId": "8a6f80b390570692", "scanner": "scanner-primary", "fingerprint": "f33aab50ed201c5f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-0654aa11a1aa5533", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/core/enhance/enhancement-orchestrator.js:15"}, "properties": {"repobilityId": "53f87549f6270e6b", "scanner": "scanner-primary", "fingerprint": "0654aa11a1aa5533", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}]}]}