{"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: scott0229/scott-agent", "shortDescription": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "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: scott0229/scott-agent\nThread: scott0229/scott-agent#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: scott0229/scott-agent\nThread: scott0229/scott-agent#5\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#5\nRepo: scott0229/scott-agent\nIssue/PR number: 5\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_ha"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_blueprint_gap", "name": "Foundry mined blueprint gap alignment: scott0229/scott-agent", "shortDescription": {"text": "Foundry mined blueprint gap alignment: scott0229/scott-agent"}, "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: scott0229/scott-agent\nThread: scott0229/scott-agent#3\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#3\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#3\nRepo: scott0229/scott-agent\nIssue/PR number: 3\nGraph consistency label: assumption_check\nNodes: 18\nEdges: 23\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix"}, "properties": {"scanner": "foundry_dataset", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_assumption_check", "name": "Foundry mined assumption checks: scott0229/scott-agent", "shortDescription": {"text": "Foundry mined assumption checks: scott0229/scott-agent"}, "fullDescription": {"text": "Comment chain pattern product: assumption_checks\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#9\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#9\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'deployment_env_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-d1d04fed7ad56496\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"h"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "medium", "confidence": 0.62, "cwe": "", "owasp": ""}}, {"id": "foundry_test_ci_gap", "name": "Foundry mined test ci gap after feedback: scott0229/scott-agent", "shortDescription": {"text": "Foundry mined test ci gap after feedback: scott0229/scott-agent"}, "fullDescription": {"text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: assumption_check\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#3\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#3\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#3\nRepo: scott0229/scott-agent\nIssue/PR number: 3\nGraph consistency label: assumption_check\nNodes: 18\nEdges: 23\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types"}, "properties": {"scanner": "foundry_dataset", "category": "testing", "severity": "high", "confidence": 0.78, "cwe": "", "owasp": ""}}, {"id": "foundry_schema_ui_api_gap", "name": "Foundry mined schema ui api mismatch: scott0229/scott-agent", "shortDescription": {"text": "Foundry mined schema ui api mismatch: scott0229/scott-agent"}, "fullDescription": {"text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: assumption_check\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#2\nEvidence:\nGraph motif: Schema, UI, and API evidence do not line up\nMotif id: schema_ui_api_mismatch\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#2\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#2\nRepo: scott0229/scott-agent\nIssue/PR number: 2\nGraph consistency label: assumption_check\nNodes: 21\nEdges: 28\nNode types: {'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: {'chain_has_link_quality': 7"}, "properties": {"scanner": "foundry_dataset", "category": "quality", "severity": "high", "confidence": 0.76, "cwe": "", "owasp": ""}}, {"id": "foundry_bad_chain", "name": "Foundry mined bad chains: scott0229/scott-agent", "shortDescription": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "fullDescription": {"text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#5\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#5\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'deployment_env_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-b55a9639b7461d8d\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "high", "confidence": 0.84, "cwe": "", "owasp": ""}}, {"id": "scanner-bead75b0f9233e05", "name": "No API endpoints detected", "shortDescription": {"text": "No API endpoints detected"}, "fullDescription": {"text": "The scanner did not find FastAPI/Flask/Express/NestJS/GraphQL/gRPC routes. If this repo exposes APIs, the framework may be unsupported."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "info", "confidence": 1.0}}, {"id": "scanner-fbbe2b0480b1e88a", "name": "Stray `console.log` in TS/JS \u2014 debug_parser.ts:50", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 debug_parser.ts:50"}, "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-76d69b007bcb96a8", "name": "Stray `console.log` in TS/JS \u2014 check_feb11_records.ts:13", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 check_feb11_records.ts:13"}, "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-1ed9f9291171a765", "name": "Stray `console.log` in TS/JS \u2014 refactor_trade_groups.js:50", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 refactor_trade_groups.js:50"}, "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-24b8a8ccc1a6d0cb", "name": "Stray `console.log` in TS/JS \u2014 check_price.ts:18", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 check_price.ts: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-b1f4c5f08e6a8684", "name": "Stray `console.log` in TS/JS \u2014 hash-admin.js:6", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 hash-admin.js:6"}, "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-fd8e8fd162d8adfe", "name": "Stray `console.log` in TS/JS \u2014 test-full-output.js:55", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 test-full-output.js:55"}, "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-f7b0692ec9c2fef8", "name": "Stray `console.log` in TS/JS \u2014 fix_admin_pwd.js:7", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 fix_admin_pwd.js:7"}, "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-e87378e0f91086fa", "name": "Stray `console.log` in TS/JS \u2014 hash-password.js:6", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 hash-password.js:6"}, "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-74559dc6fd3c1ef5", "name": "Stray `console.log` in TS/JS \u2014 test-delete-api.js:11", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 test-delete-api.js:11"}, "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-7a0c7095b0d7a9e2", "name": "Stray `console.log` in TS/JS \u2014 debug_december.js:27", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 debug_december.js:27"}, "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-a04e8f11d0afd2e5", "name": "Stray `console.log` in TS/JS \u2014 refactor.js:46", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 refactor.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-d9ca9ee105583c81", "name": "Stray `console.log` in TS/JS \u2014 check-db.ts:6", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 check-db.ts:6"}, "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-2e8a91b8a5afce09", "name": "Stray `console.log` in TS/JS \u2014 debug_db.ts:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 debug_db.ts:12"}, "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-54529dace0ee929c", "name": "Stray `console.log` in TS/JS \u2014 test-alpha-vantage.js:20", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 test-alpha-vantage.js:20"}, "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-7932ce65f69a187a", "name": "Stray `console.log` in TS/JS \u2014 temp_add_btn.js:23", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 temp_add_btn.js:23"}, "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-41f26999e21e1f7c", "name": "Stray `console.log` in TS/JS \u2014 check_price.js:14", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 check_price.js:14"}, "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-46354906b7af8ea6", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-frozen.js:8", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-frozen.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-788253d4fed83e66", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-ib-rate.js:31", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-ib-rate.js:31"}, "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-f551d487f2be6ca4", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-ib-rate2.js:28", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-ib-rate2.js:28"}, "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-301da6110887e7e2", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-option-focused.js:9", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-option-focused.js:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-73f3406d2e6125b2", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-electron.js:3", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-electron.js:3"}, "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-a5174a573415b1e3", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-option-data.js:19", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-option-data.js:19"}, "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-c9ba5cef3978100f", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-option-sim.js:12", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-option-sim.js:12"}, "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-0c9c9706e766dcd7", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/tmp-test-api.js:4", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/tmp-test-api.js:4"}, "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-ab421d8c175c0905", "name": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/SettingsPanel.tsx:264", "shortDescription": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/SettingsPanel.tsx:264"}, "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-691c74f6fdc7b03d", "name": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/TransferStockDialog.tsx:416", "shortDescription": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/TransferStockDialog.tsx:416"}, "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-9882eab094c62b41", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/renderer/src/components/OptionOrderForm.tsx:116", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/renderer/src/components/OptionOrderForm.tsx:116"}, "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-95508d4c195daf59", "name": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/AiAdvisorDialog.tsx:214", "shortDescription": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/AiAdvisorDialog.tsx:214"}, "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-c57c29314781f633", "name": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/CloseOptionDialog.tsx:289", "shortDescription": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/CloseOptionDialog.tsx:289"}, "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-e7945c9825c0bd43", "name": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/ClosePositionDialog.tsx:199", "shortDescription": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/ClosePositionDialog.tsx:199"}, "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-a87ff91b041f0b81", "name": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/TradeGroupDialog.tsx:212", "shortDescription": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/TradeGroupDialog.tsx:212"}, "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-5bfece8c54f57a0d", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/renderer/src/components/AccountOverview.tsx:788", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/renderer/src/components/AccountOverview.tsx:788"}, "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-d218e6b192c4676c", "name": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/BackfillProgressDialog.tsx:106", "shortDescription": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/BackfillProgressDialog.tsx:106"}, "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-fac91e7ad7c1b51c", "name": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/OptionOrderDialog.tsx:220", "shortDescription": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/OptionOrderDialog.tsx:220"}, "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-c6b59f55d82ec1a5", "name": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/AddGroupDialog.tsx:358", "shortDescription": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/AddGroupDialog.tsx:358"}, "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-59317f2fb4612837", "name": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/RollOptionDialog.tsx:560", "shortDescription": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/RollOptionDialog.tsx:560"}, "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-d99c21cbf9cf509b", "name": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/UploadProgressDialog.tsx:98", "shortDescription": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/UploadProgressDialog.tsx:98"}, "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-3cfa81db76120789", "name": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/PriceSyncDialog.tsx:171", "shortDescription": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/PriceSyncDialog.tsx:171"}, "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-5963cd0069823e55", "name": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/CloseGroupDialog.tsx:496", "shortDescription": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/CloseGroupDialog.tsx:496"}, "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-649ed4cd5b3bc1f5", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/renderer/src/hooks/useAccountStore.ts:409", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/renderer/src/hooks/useAccountStore.ts:409"}, "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-53fedd8df0cbb2f6", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/aliasCache.ts:48", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/aliasCache.ts:48"}, "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-09bae3b2c8accac8", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/index.ts:120", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/index.ts:120"}, "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-c8a10cf66c4ad26d", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/rates.ts:27", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/rates.ts:27"}, "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-4905f0dc69411fc9", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ai/advisor.ts:69", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ai/advisor.ts:69"}, "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-29c115c7c787b68e", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/quotes.ts:117", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/quotes.ts:117"}, "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-21d3f94a27f07e4a", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/historical.ts:81", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/historical.ts:81"}, "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-63afec9b85074443", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/accounts.ts:237", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/accounts.ts:237"}, "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-40f4185388251cfe", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/connection.ts:72", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/connection.ts:72"}, "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-6452eac36a9262cf", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/options.ts:226", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/options.ts:226"}, "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-91937cd972dcc9a3", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/gateway.ts:165", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/gateway.ts:165"}, "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-e8f961bbbd215475", "name": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/orders.ts:125", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/orders.ts:125"}, "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-615bcb57072fef98", "name": "Stray `console.log` in TS/JS \u2014 scripts/debug_deposits.js:8", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 scripts/debug_deposits.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-ec293bf847572ffb", "name": "Stray `console.log` in TS/JS \u2014 src/scheduled.ts:8", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/scheduled.ts: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-c47dff298cc30691", "name": "Stray `console.log` in TS/JS \u2014 src/components/UserProfileMenu.tsx:75", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/components/UserProfileMenu.tsx:75"}, "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-5fddf2f72e8c98fe", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/GroupTradesDialog.tsx:679", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/GroupTradesDialog.tsx:679"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-31a495ea2fa9be86", "name": "Stray `console.log` in TS/JS \u2014 src/components/NetEquityChart.tsx:27", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/components/NetEquityChart.tsx:27"}, "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-59db365451df4627", "name": "Stray `console.log` in TS/JS \u2014 src/components/Navbar.tsx:31", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/components/Navbar.tsx:31"}, "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-5e403fbf1c0ec9fd", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 src/app/layout.tsx:28", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 src/app/layout.tsx:28"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-07820530ad17c6c7", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 src/app/blog/[id]/page.tsx:96", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 src/app/blog/[id]/page.tsx:96"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f7bbc9ed60c6b33f", "name": "Stray `console.log` in TS/JS \u2014 src/app/options/page.tsx:110", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/app/options/page.tsx:110"}, "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-169aa6a44eb6e0b8", "name": "Stray `console.log` in TS/JS \u2014 src/app/options/[userId]/page.tsx:136", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/app/options/[userId]/page.tsx:136"}, "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-a0c75d647fc808ed", "name": "Stray `console.log` in TS/JS \u2014 src/app/api/options/route.ts:263", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/options/route.ts:263"}, "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-9149e24dd31f0f93", "name": "Stray `console.log` in TS/JS \u2014 src/app/api/users/route.ts:28", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/users/route.ts:28"}, "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-121e396dabbf77b0", "name": "Stray `console.log` in TS/JS \u2014 src/app/api/auth/me/route.ts:10", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/auth/me/route.ts:10"}, "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-e93c78f309e2d199", "name": "Stray `console.log` in TS/JS \u2014 src/app/api/scheduled/auto-update/route.ts:14", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/scheduled/auto-update/route.ts:14"}, "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-82620b5156d12c4d", "name": "Stray `console.log` in TS/JS \u2014 src/app/api/test-alpha-vantage/route.ts:39", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/test-alpha-vantage/route.ts: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-ef47046f82304db5", "name": "Stray `console.log` in TS/JS \u2014 src/app/api/deposits/route.ts:93", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/deposits/route.ts: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-35ed66d631a3b864", "name": "Stray `console.log` in TS/JS \u2014 src/app/api/deposits/import/route.ts:68", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/deposits/import/route.ts:68"}, "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-d4c597aa43c285b1", "name": "Stray `console.log` in TS/JS \u2014 src/app/api/market-data/clear-cache/route.ts:47", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/market-data/clear-cache/route.ts:47"}, "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-ab54b2c2a0df15d3", "name": "Stray `console.log` in TS/JS \u2014 src/app/api/market-data/backfill/route.ts:33", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/market-data/backfill/route.ts:33"}, "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-e3805b9d42f36fe5", "name": "TODO/FIXME marker in shipping code \u2014 src/app/api/market-data/fill-gaps/route.ts:16", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 src/app/api/market-data/fill-gaps/route.ts:16"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c511062fa73485e8", "name": "Stray `console.log` in TS/JS \u2014 src/app/api/market-data/fill-gaps/route.ts:72", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/market-data/fill-gaps/route.ts:72"}, "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-b06dd255e69291a8", "name": "Stray `console.log` in TS/JS \u2014 src/app/api/net-equity/import-ib/route.ts:599", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/net-equity/import-ib/route.ts:599"}, "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-ac13c5fd16a94648", "name": "Stray `console.log` in TS/JS \u2014 src/app/net-equity/[userId]/page.tsx:165", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/app/net-equity/[userId]/page.tsx:165"}, "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-714310332b946efd", "name": "Stray `console.log` in TS/JS \u2014 src/lib/market-data.ts:20", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/lib/market-data.ts:20"}, "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-4ab780c3c13e1104", "name": "Stray `console.log` in TS/JS \u2014 src/lib/response-cache.ts:20", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/lib/response-cache.ts:20"}, "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-a33296f2b2afd8c9", "name": "Possible secret in wrangler.toml", "shortDescription": {"text": "Possible secret in wrangler.toml"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-e73ef1eeee89e48d", "name": "Insecure pattern 'node_child_process' in fix_admin_pwd.js:2", "shortDescription": {"text": "Insecure pattern 'node_child_process' in fix_admin_pwd.js:2"}, "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-bc8d51978d07c3b7", "name": "Possible secret in scott-agent-trader/src/main/index.ts", "shortDescription": {"text": "Possible secret in scott-agent-trader/src/main/index.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-714e646573538a2c", "name": "Possible secret in scott-agent-trader/src/main/rates.ts", "shortDescription": {"text": "Possible secret in scott-agent-trader/src/main/rates.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-8a539dfecfb89988", "name": "Possible secret in scott-agent-trader/src/main/ai/advisor.ts", "shortDescription": {"text": "Possible secret in scott-agent-trader/src/main/ai/advisor.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-84ec842a8d1a4304", "name": "Insecure pattern 'node_child_process' in scott-agent-trader/src/main/ib/gateway.ts:1", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scott-agent-trader/src/main/ib/gateway.ts:1"}, "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-90cf0accb0d43767", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-roll-purpose-v2.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-roll-purpose-v2.mjs:3"}, "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-c597d0d79a8f76dd", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-strike-cushion-plain.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-strike-cushion-plain.mjs:3"}, "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-ec85f9bba7c66b89", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-1-keep-strike.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-1-keep-strike.mjs:3"}, "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-6cdea263e98a9f1a", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-cost-add-profit.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-cost-add-profit.mjs:3"}, "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-ad200ab954ab2c33", "name": "Insecure pattern 'node_child_process' in scripts/insert-blog-options-101.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/insert-blog-options-101.mjs:3"}, "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-1ac895c092401f4c", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-1-merge-paras.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-1-merge-paras.mjs:3"}, "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-2741267e49587ec8", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-1-title-v3.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-1-title-v3.mjs:3"}, "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-b4f6987040114b43", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row3-space.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row3-space.mjs:3"}, "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-457afcad9052c9cd", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-time-style.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-time-style.mjs:3"}, "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-8d1726ae58637c4e", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-1-merge-fear-para.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-1-merge-fear-para.mjs:3"}, "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-aabbcc923c2c7bed", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row3b.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row3b.mjs:3"}, "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-a313ce318057bf3a", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-analyze.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-analyze.mjs:3"}, "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-32768b55aa9f456f", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-5-strike-label-left.mjs:5", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-5-strike-label-left.mjs: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-0e8f4286d02e333e", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-risk-profile-simple.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-risk-profile-simple.mjs:3"}, "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-951dca293aee6079", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-intro.mjs:6", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-intro.mjs:6"}, "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-bfa2d9908a7e962d", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-roll-strike.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-roll-strike.mjs:3"}, "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-62f2f5b99320f2d8", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-critique-plain.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-critique-plain.mjs:3"}, "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-c928c0e6b033a555", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-credit-zh.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-credit-zh.mjs:3"}, "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-cafac129040293bc", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row3-callout.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row3-callout.mjs:4"}, "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-bb951ccaace7a5da", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-5-title-v2.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-5-title-v2.mjs:3"}, "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-72332e2784099b04", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-add-time.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-add-time.mjs:3"}, "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-447002d453e0a2c2", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-reduce-bold.mjs:5", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-reduce-bold.mjs: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-3dc94a0839349ed3", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-margin-24.mjs:5", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-margin-24.mjs: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-a5d35f4bd8df1425", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-summary-rewrite.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-summary-rewrite.mjs:4"}, "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-c50aa0fecb779533", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-loss-color.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-loss-color.mjs:3"}, "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-b5666fb054dad32d", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-callout-tighten.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-callout-tighten.mjs:3"}, "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-d6b4e33b1c318979", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-strike-label-left.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-strike-label-left.mjs:3"}, "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-1c7225856dcdcb88", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-title.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-title.mjs:3"}, "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-53cb40b1323420a5", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-1-tags-sell-put.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-1-tags-sell-put.mjs:3"}, "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-25e9445c6c86eaff", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-roll-purpose.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-roll-purpose.mjs:3"}, "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-4216a9e7bbdd8cad", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-analysis-rewrite.mjs:5", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-analysis-rewrite.mjs: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-d74010b66a8d0d5d", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-92-strike-left.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-92-strike-left.mjs:3"}, "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-e6745167c045c38c", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row1b.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row1b.mjs:3"}, "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-724ab63e2d05a56e", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-net-debit.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-net-debit.mjs:3"}, "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-540e1d5ab043ddc0", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-emoji-merge.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-emoji-merge.mjs:4"}, "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-e8dbc2a396225038", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-h3-maybe.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-h3-maybe.mjs:3"}, "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-4524ca4105b056da", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-itm.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-itm.mjs:3"}, "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-cc21bda1165f277d", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-intro2.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-intro2.mjs:3"}, "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-c399a01e8e4f4a29", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-summary-rewrite.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-summary-rewrite.mjs:4"}, "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-964b0add4a64ac36", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-right-padding.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-right-padding.mjs:3"}, "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-20622f53f208267a", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-reduce-bold.mjs:5", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-reduce-bold.mjs: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-a3b245408630b4b3", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-background.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-background.mjs:4"}, "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-8cca2d190a81d86b", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-time-price.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-time-price.mjs:3"}, "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-f00eda22e18a931e", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-net-credit-note.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-net-credit-note.mjs:3"}, "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-e906f81c0f4023b3", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-center-label.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-center-label.mjs:4"}, "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-947a5b082f7684ef", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-chart-10day.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-chart-10day.mjs:3"}, "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-e75007e8fce03f01", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-zero-cost.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-zero-cost.mjs:3"}, "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-f26984aeeddcff8e", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-defense-rewrite.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-defense-rewrite.mjs:3"}, "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-5364c28a07cb1c22", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-chart.mjs:6", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-chart.mjs:6"}, "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-4f0904bcb1ab582e", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-roll-bullets.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-roll-bullets.mjs:3"}, "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-348bd5763d70cc18", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-reddot.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-reddot.mjs:3"}, "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-8705c4884c2231c1", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-net-collect.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-net-collect.mjs:3"}, "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-0ae4b6cf0c513602", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-buffer-spread.mjs:6", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-buffer-spread.mjs:6"}, "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-261a63823063798c", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-layer2-rewrite.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-layer2-rewrite.mjs:3"}, "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-c03beb25735bb047", "name": "Insecure pattern 'node_child_process' in scripts/insert-blog-seller-loss-lessons.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/insert-blog-seller-loss-lessons.mjs:3"}, "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-56ffd9e41ac3cd26", "name": "Insecure pattern 'node_child_process' in scripts/insert-blog-iv-video.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/insert-blog-iv-video.mjs:4"}, "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-6d9f1d86b4eb9a7c", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-title-v4.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-title-v4.mjs:3"}, "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-ef5a7a0d285208c1", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-pay-to-roll-2.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-pay-to-roll-2.mjs:3"}, "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-db6b357d2866c6f3", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-figcaption.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-figcaption.mjs:3"}, "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-25dcef8d81e66adf", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-8305.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-8305.mjs:3"}, "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-c7ba0941f3dae53c", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-table-dark-mode.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-table-dark-mode.mjs:4"}, "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-684561b4c70cbc9e", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-2dte-sellput.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-2dte-sellput.mjs:3"}, "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-bf11005d46dfffb5", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row3c.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row3c.mjs:3"}, "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-060df0689cf9b47a", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-roll-to-zhanqi.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-roll-to-zhanqi.mjs:3"}, "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-1d1da9b0c6d9c96e", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-equal-margin.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-equal-margin.mjs:3"}, "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-5f795a52d97c45dc", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-risk-profile.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-risk-profile.mjs:3"}, "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-f6739f02f90b177c", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-abcd-to-1234.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-abcd-to-1234.mjs:4"}, "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-710fd9ee8a9d6382", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-active-choice.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-active-choice.mjs:3"}, "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-f54c753aaa40e7c4", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-cost-account.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-cost-account.mjs:3"}, "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-7b9abedafcaa5942", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-hindsight-phrase.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-hindsight-phrase.mjs:3"}, "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-b3842158dc95a4f0", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-1-title-v2.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-1-title-v2.mjs:3"}, "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-5345e23c10e88779", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-comma-to-period.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-comma-to-period.mjs:3"}, "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-b7523383fc0aef95", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-pay-extreme.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-pay-extreme.mjs:3"}, "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-13f0dddabdf7eec4", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-rebuttal-2-zh.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-rebuttal-2-zh.mjs:3"}, "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-503fcb3cf3580e03", "name": "Insecure pattern 'node_child_process' in scripts/insert-blog-4-sell-call-overdefensive.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/insert-blog-4-sell-call-overdefensive.mjs:4"}, "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-f6ce14729d068ff8", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-yaxis-right.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-yaxis-right.mjs:3"}, "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-f9c65b593a49c06e", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-strike-change.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-strike-change.mjs:3"}, "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-1bf873c0d102eadc", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-title.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-title.mjs:4"}, "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-b6495ed8c9d6ddf5", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-may22-apostrophe.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-may22-apostrophe.mjs:3"}, "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-814b01ed123c21cc", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-pay-to-roll.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-pay-to-roll.mjs:3"}, "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-4332a8a3d0f78291", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-summary-zh.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-summary-zh.mjs:3"}, "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-6d56303712fae8ed", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-intro3.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-intro3.mjs:3"}, "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-e9e3c9258309fc0b", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-remove-h3.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-remove-h3.mjs:3"}, "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-4cb1174193c54650", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-intro.mjs:5", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-intro.mjs: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-e3f8f0954b5fe319", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-commit-line.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-commit-line.mjs:3"}, "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-264a8f45f4f10a94", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-quant.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-quant.mjs:3"}, "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-53c49113045602e3", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-title-v3.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-title-v3.mjs:3"}, "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-aae5640ca62eac11", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-title-v2.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-title-v2.mjs:3"}, "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-802c9ba9a3757f88", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-titles-renumber.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-titles-renumber.mjs:3"}, "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-f6fc29e160e598a4", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row4b.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row4b.mjs:3"}, "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-f1562dde78d9be2c", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-soften-defend.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-soften-defend.mjs:3"}, "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-82138b82fcb24fb8", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-callout-darkmode.mjs:5", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-callout-darkmode.mjs: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-9c28914fe4ab6de5", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-pay-138-revise.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-pay-138-revise.mjs:3"}, "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-071fc1051e0e2bbf", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-title-v2.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-title-v2.mjs:3"}, "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-f702c4b6dcad090d", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-iv-video.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-iv-video.mjs:4"}, "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-83477bb97b72f762", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-called-away-phrase.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-called-away-phrase.mjs:3"}, "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-e40ad6d1274c18c0", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-merge-p.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-merge-p.mjs:3"}, "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-a79c776e393c3076", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-rows-continuous.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-rows-continuous.mjs:3"}, "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-2a416ce25eed4218", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-remove-bottomline.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-remove-bottomline.mjs:4"}, "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-ff310c088ffd00cf", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row2.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row2.mjs:3"}, "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-bbf4b53a889a02f6", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-h3-sellput.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-h3-sellput.mjs:3"}, "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-ab18b1893c0ca7cb", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-highlight-sentence.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-highlight-sentence.mjs:3"}, "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-fbcbe5e9d55f3560", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-put-strike.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-put-strike.mjs:4"}, "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-5d9004b6df5d8e20", "name": "Insecure pattern 'node_child_process' in scripts/insert-blog-seller-avoid-loss.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/insert-blog-seller-avoid-loss.mjs:3"}, "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-7d2e6c8486c1d789", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-cost-basis.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-cost-basis.mjs:3"}, "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-151905ab472c70c3", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-risk-reward.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-risk-reward.mjs:3"}, "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-5744b535febd194f", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-pp-to-percent.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-pp-to-percent.mjs:3"}, "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-202fb3e8359a68aa", "name": "Insecure pattern 'node_child_process' in scripts/insert-blog-put-strike.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/insert-blog-put-strike.mjs:4"}, "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-d89f7705156a7b78", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-5-chart-taller.mjs:6", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-5-chart-taller.mjs:6"}, "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-314f455ca9f614c3", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-opp-cost-zh.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-opp-cost-zh.mjs:3"}, "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-845ab614be8e06a8", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row1.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row1.mjs:3"}, "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-3a9c37900b3b446a", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-8938.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-8938.mjs:3"}, "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-d7d096caace9b5f8", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-5-roll-boxes.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-5-roll-boxes.mjs:4"}, "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-b4902ea92363bbca", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-merge-cols.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-merge-cols.mjs:4"}, "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-7a583927094ec990", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row2b.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row2b.mjs:3"}, "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-a8d6d475304e0f21", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-bullet-fmt.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-bullet-fmt.mjs:3"}, "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-45866d8bfd9f2c0e", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-strike-font.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-strike-font.mjs:3"}, "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-69110d9da5109ad2", "name": "Insecure pattern 'node_child_process' in scripts/insert-blog-5-same-day-double-roll.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/insert-blog-5-same-day-double-roll.mjs:4"}, "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-e87a699e38f51cb1", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-center-label2.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-center-label2.mjs:4"}, "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-80cc269463bf06da", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-consolidate.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-consolidate.mjs:3"}, "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-4c8db9eb4d1b8881", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-1-title-v4.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-1-title-v4.mjs:3"}, "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-53434f8a56ad6174", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-rebuttal-quote.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-rebuttal-quote.mjs:3"}, "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-5fb500868606edbc", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-merge-cols2.mjs:4", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-merge-cols2.mjs:4"}, "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-8d2b0f20e889177a", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-trader-line.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-trader-line.mjs:3"}, "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-65df3af9d337b4b7", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-3-buffer-chart.mjs:5", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-buffer-chart.mjs: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-e51848f1a10b5c13", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-tags-merge-sell.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-tags-merge-sell.mjs:3"}, "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-1774dcd9738556e8", "name": "Insecure pattern 'node_child_process' in scripts/update-blog-4-short-dte-explain.mjs:3", "shortDescription": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-short-dte-explain.mjs:3"}, "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-3b9400f1bb02f28c", "name": "Insecure pattern 'direct_innerhtml_assignment' in src/components/TradingViewWidget.tsx:24", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/components/TradingViewWidget.tsx:24"}, "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-524b0a8ad6fa08a1", "name": "Insecure pattern 'dangerous_innerhtml' in src/app/layout.tsx:28", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in src/app/layout.tsx:28"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-451763545e26e75c", "name": "Insecure pattern 'dangerous_innerhtml' in src/app/blog/[id]/page.tsx:96", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in src/app/blog/[id]/page.tsx:96"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7d8492188c6a3f0c", "name": "Possible secret in src/lib/fred.ts", "shortDescription": {"text": "Possible secret in src/lib/fred.ts"}, "fullDescription": {"text": "Detected pattern matching generic_api_key. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-98eac7c7ee5d35f9", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "actions/checkout@v4 can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-36fd3c86ff87e5ff", "name": "GitHub Action is tag-pinned rather than SHA-pinned", "shortDescription": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "fullDescription": {"text": "actions/checkout@v4 can move without a code change in this repo. Pin third-party actions to a reviewed 40-character commit SHA."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7dcc0b6f68c32dea", "name": "package.json defines install-time lifecycle scripts", "shortDescription": {"text": "package.json defines install-time lifecycle scripts"}, "fullDescription": {"text": "preinstall/install/postinstall/prepare scripts execute during dependency installation. Review them carefully for network calls, obfuscation, shell execution, or credential access."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b307b593b25ea3cf", "name": "Very large file: scott-agent-trader/src/renderer/src/components/AccountOverview.tsx (5007 lines)", "shortDescription": {"text": "Very large file: scott-agent-trader/src/renderer/src/components/AccountOverview.tsx (5007 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-6ef8b6873cb5b05b", "name": "Very large file: scott-agent-trader/src/main/index.ts (1417 lines)", "shortDescription": {"text": "Very large file: scott-agent-trader/src/main/index.ts (1417 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-d886d969a3827614", "name": "Very large file: src/app/options/[userId]/page.tsx (970 lines)", "shortDescription": {"text": "Very large file: src/app/options/[userId]/page.tsx (970 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-dfbaa7bb15b101bd", "name": "Very large file: src/app/api/users/route.ts (989 lines)", "shortDescription": {"text": "Very large file: src/app/api/users/route.ts (989 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-a565997c9ce74837", "name": "Very large file: src/app/api/users/import/route.ts (916 lines)", "shortDescription": {"text": "Very large file: src/app/api/users/import/route.ts (916 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-be689f4fd70ba73a", "name": "Very large file: src/app/api/net-equity/import-ib/route.ts (1082 lines)", "shortDescription": {"text": "Very large file: src/app/api/net-equity/import-ib/route.ts (1082 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-b6f23cee53a69253", "name": "Very large file: src/app/admin/users/page.tsx (2657 lines)", "shortDescription": {"text": "Very large file: src/app/admin/users/page.tsx (2657 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-66ab91e167881e06", "name": "Very large file: src/app/daily-trades/page.tsx (1306 lines)", "shortDescription": {"text": "Very large file: src/app/daily-trades/page.tsx (1306 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-6893a6c8b0861585", "name": "Very low test-to-source ratio", "shortDescription": {"text": "Very low test-to-source ratio"}, "fullDescription": {"text": "16 test file(s) for 387 source file(s) (ratio 0.04). Consider adding integration or unit tests for critical paths."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-141b30a41e03817b", "name": "No license file detected", "shortDescription": {"text": "No license file detected"}, "fullDescription": {"text": "No LICENSE/COPYING/NOTICE file was found. Generated repositories often omit licensing, which blocks reuse and automated intake."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 750 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 102 placeholder/mock markers across 48 source files. This often means the repo looks complete while core flows still use generated scaffolding or fake data."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2d0c7b7ab8f8aacf", "name": "Critical user flow still appears backed by mock or placeholder data", "shortDescription": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "fullDescription": {"text": "A payment/auth/admin/order/billing-style flow contains mock, fake, TODO, dummy, or placeholder markers in runtime source. In the Fable corpus this is a high-leverage completeness smell: the app can look finished while the money, identity, or tenant flow is still scaffolded."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-749d4bc1bd66df5f", "name": "Agent instructions exist but release-hardening basics are missing", "shortDescription": {"text": "Agent instructions exist but release-hardening basics are missing"}, "fullDescription": {"text": "AI-coder instruction files were found, but the repo is missing license. Treat this as a contract gap: the agent is guided, but the generated output is not yet guarded by the controls that make it repeatable."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-383eee0894829f12", "name": "Commented-code block (6 lines) in worker-entry.mjs:3", "shortDescription": {"text": "Commented-code block (6 lines) in worker-entry.mjs:3"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-78b8d6fed7eb7fab", "name": "`fetch()` without try/.catch or AbortSignal \u2014 test-delete-api.js:36", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 test-delete-api.js:36"}, "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-0efbc6f934c93aea", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scott-agent-trader/src/renderer/src/App.tsx:265", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scott-agent-trader/src/renderer/src/App.tsx:265"}, "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-99a6597bf13c4f9f", "name": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/components/AccountOverview.tsx:414", "shortDescription": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/components/AccountOverview.tsx:414"}, "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-8de807418e104af6", "name": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/components/RollOptionDialog.tsx:108", "shortDescription": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/components/RollOptionDialog.tsx:108"}, "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-d76fb3717d94919b", "name": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/components/ConnectionStatus.tsx:57", "shortDescription": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/components/ConnectionStatus.tsx:57"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9bed1f13b566f760", "name": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/lib/prefsSync.ts:1", "shortDescription": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/lib/prefsSync.ts:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e86cc0f12e069db2", "name": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/hooks/useTraderSettings.ts:64", "shortDescription": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/hooks/useTraderSettings.ts:64"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-37255c0e8b1b248a", "name": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/hooks/useAccountStore.ts:236", "shortDescription": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/hooks/useAccountStore.ts:236"}, "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-16d829bccaf58d9f", "name": "Commented-code block (5 lines) in scott-agent-trader/src/main/aliasCache.ts:26", "shortDescription": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/main/aliasCache.ts:26"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d6d713f1a960288d", "name": "Commented-code block (5 lines) in scott-agent-trader/src/main/index.ts:92", "shortDescription": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/main/index.ts:92"}, "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-82b7a91021ed24a2", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scott-agent-trader/src/main/index.ts:127", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scott-agent-trader/src/main/index.ts:127"}, "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-20e39a2eb8c15063", "name": "`fetch()` without try/.catch or AbortSignal \u2014 scott-agent-trader/src/main/ai/advisor.ts:77", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scott-agent-trader/src/main/ai/advisor.ts:77"}, "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-8ee64a09ad6708b3", "name": "Commented-code block (5 lines) in scott-agent-trader/src/main/ib/accounts.ts:142", "shortDescription": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/main/ib/accounts.ts:142"}, "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-b59e339506d39a0c", "name": "Commented-code block (8 lines) in scott-agent-trader/src/main/ib/options.ts:57", "shortDescription": {"text": "Commented-code block (8 lines) in scott-agent-trader/src/main/ib/options.ts:57"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a4557916540424bf", "name": "Commented-code block (5 lines) in scott-agent-trader/src/main/ib/gateway.ts:6", "shortDescription": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/main/ib/gateway.ts:6"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4b7de835bddc358d", "name": "Commented-code block (5 lines) in scott-agent-trader/src/main/ib/orders.ts:211", "shortDescription": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/main/ib/orders.ts:211"}, "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-d86d46111186d1a8", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/UserProfileMenu.tsx:182", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/UserProfileMenu.tsx:182"}, "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-d810e1a26d59bd37", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/EditNetEquityDialog.tsx:140", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/EditNetEquityDialog.tsx: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-b385fba859bfb51e", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/NewOptionDialog.tsx:152", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/NewOptionDialog.tsx:152"}, "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-adefa1293e748da8", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/EditInitialCostDialog.tsx:121", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/EditInitialCostDialog.tsx:121"}, "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-a986a2047523baa0", "name": "Commented-code block (5 lines) in src/components/GroupTradesDialog.tsx:301", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/GroupTradesDialog.tsx:301"}, "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-cdecd2e64b2ecb10", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/GroupOverviewDialog.tsx:120", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/GroupOverviewDialog.tsx:120"}, "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-c422e786eda6fbca", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/EditOptionDialog.tsx:174", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/EditOptionDialog.tsx:174"}, "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-eb47d5342521490a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/DepositsDialog.tsx:124", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/DepositsDialog.tsx:124"}, "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-031431d7bc90f06a", "name": "Commented-code block (6 lines) in src/components/NewNetEquityDialog.tsx:144", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/NewNetEquityDialog.tsx:144"}, "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-100124a1dd21898f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/NewNetEquityDialog.tsx:119", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/NewNetEquityDialog.tsx:119"}, "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-ddc3daa3284ac535", "name": "Commented-code block (5 lines) in src/components/EquityPremiumChart.tsx:46", "shortDescription": {"text": "Commented-code block (5 lines) in src/components/EquityPremiumChart.tsx:46"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-9856649a35521e66", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/UserStockTradesDialog.tsx:54", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/UserStockTradesDialog.tsx:54"}, "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-c227eb72752640e1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/AdminUserDialog.tsx:98", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/AdminUserDialog.tsx:98"}, "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-f52627c31ae95a16", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/BatchSetGroupDialog.tsx:80", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/BatchSetGroupDialog.tsx:80"}, "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-50bf80a6c8fa4668", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/options/[userId]/page.tsx:114", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/options/[userId]/page.tsx:114"}, "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-cee03e6d4eb4ca06", "name": "Commented-code block (9 lines) in src/app/api/options/route.ts:27", "shortDescription": {"text": "Commented-code block (9 lines) in src/app/api/options/route.ts:27"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8fd6e91a49ba7c69", "name": "Commented-code block (6 lines) in src/app/api/users/route.ts:438", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/users/route.ts:438"}, "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-0490a795252d9495", "name": "Commented-code block (5 lines) in src/app/api/users/[id]/report/route.ts:76", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/users/[id]/report/route.ts:76"}, "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-82251de303f5c117", "name": "Commented-code block (6 lines) in src/app/api/users/send-report/route.ts:58", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/users/send-report/route.ts:58"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3339cd58dba99158", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/users/send-report/route.ts:96", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/users/send-report/route.ts:96"}, "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-e6e45ef79745b476", "name": "Commented-code block (5 lines) in src/app/api/trader-account-groups/route.ts:101", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/trader-account-groups/route.ts:101"}, "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-76abc595ac6f09bd", "name": "Commented-code block (7 lines) in src/app/api/scheduled/auto-update/route.ts:162", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/scheduled/auto-update/route.ts:162"}, "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-70732420561b9c48", "name": "Commented-code block (7 lines) in src/app/api/apps/trader/route.ts:8", "shortDescription": {"text": "Commented-code block (7 lines) in src/app/api/apps/trader/route.ts:8"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-34a1774f76736924", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/test-alpha-vantage/route.ts:59", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/test-alpha-vantage/route.ts:59"}, "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-0a664a7d0bc08dfb", "name": "Commented-code block (5 lines) in src/app/api/admin/sync-option-underlying-prices/route.ts:50", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/admin/sync-option-underlying-prices/route.ts:50"}, "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-269ded6c8e4f58ba", "name": "Commented-code block (6 lines) in src/app/api/daily-trades/route.ts:117", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/daily-trades/route.ts:117"}, "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-a5148237bade7665", "name": "Commented-code block (5 lines) in src/app/api/daily-trades/holdings/route.ts:40", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/daily-trades/holdings/route.ts:40"}, "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-56818898c6cd0a7a", "name": "Commented-code block (5 lines) in src/app/api/daily-trades/history/route.ts:112", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/daily-trades/history/route.ts:112"}, "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-9b828477a2a81b32", "name": "Commented-code block (6 lines) in src/app/api/market-data/backfill/route.ts:235", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/market-data/backfill/route.ts:235"}, "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-b3479407570f1e1d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/market-data/backfill/route.ts:181", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/market-data/backfill/route.ts:181"}, "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-89c0c7e2cd2f280e", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/market-data/fill-gaps/route.ts:112", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/market-data/fill-gaps/route.ts:112"}, "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-d75e6712a9d82666", "name": "Commented-code block (5 lines) in src/app/api/trader/latest-version/route.ts:8", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/api/trader/latest-version/route.ts:8"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-61d55101e4f5197e", "name": "Commented-code block (6 lines) in src/app/api/net-equity/import-ib/route.ts:105", "shortDescription": {"text": "Commented-code block (6 lines) in src/app/api/net-equity/import-ib/route.ts:105"}, "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-99c3fad454779448", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/stocks/page.tsx:149", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/stocks/page.tsx:149"}, "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-5669d1f1b455daf7", "name": "Commented-code block (5 lines) in src/app/admin/users/page.tsx:311", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/admin/users/page.tsx:311"}, "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-360dde2066770a17", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/admin/users/page.tsx:697", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/admin/users/page.tsx:697"}, "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-591039e7b349131a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/admin/reports/page.tsx:133", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/admin/reports/page.tsx:133"}, "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-d15f735d056d23b2", "name": "Commented-code block (5 lines) in src/app/daily-trades/page.tsx:374", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/daily-trades/page.tsx:374"}, "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-48bcb85e36abb333", "name": "Commented-code block (5 lines) in src/app/trade-groups/page.tsx:319", "shortDescription": {"text": "Commented-code block (5 lines) in src/app/trade-groups/page.tsx:319"}, "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-8e11388070a6ab3e", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/trade-groups/page.tsx:178", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/trade-groups/page.tsx:178"}, "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-0c531203005f69e8", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/net-equity/page.tsx:120", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/net-equity/page.tsx:120"}, "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-ea98f7dc07e07cea", "name": "Commented-code block (8 lines) in src/app/net-equity/[userId]/page.tsx:118", "shortDescription": {"text": "Commented-code block (8 lines) in src/app/net-equity/[userId]/page.tsx:118"}, "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-bf591cce55b95e6d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/net-equity/[userId]/page.tsx:127", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/net-equity/[userId]/page.tsx:127"}, "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-6ef1d3d934a72c3c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/net-equity/[userId]/benchmark/[symbol]/page.tsx:102", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/net-equity/[userId]/benchmark/[symbol]/page.tsx:102"}, "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-2485348386d9d40b", "name": "Legacy-named symbol `summaryOld` in src/lib/daily-trades-text.ts:327", "shortDescription": {"text": "Legacy-named symbol `summaryOld` in src/lib/daily-trades-text.ts:327"}, "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-6244df851644a8b6", "name": "Commented-code block (6 lines) in src/lib/daily-trades-text.ts:93", "shortDescription": {"text": "Commented-code block (6 lines) in src/lib/daily-trades-text.ts:93"}, "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-64001a4d185ea91a", "name": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/fred.ts:29", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/fred.ts:29"}, "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-7e125a114f161d55", "name": "Commented-code block (8 lines) in src/lib/twr.ts:207", "shortDescription": {"text": "Commented-code block (8 lines) in src/lib/twr.ts:207"}, "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-0fa7ce5059edabe6", "name": "Commented-code block (8 lines) in src/lib/options-metrics.ts:55", "shortDescription": {"text": "Commented-code block (8 lines) in src/lib/options-metrics.ts:55"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/19082"}, "properties": {"repository": "scott0229/scott-agent", "repoUrl": "https://github.com/scott0229/scott-agent", "branch": "main"}, "results": [{"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429738, "scanner": "foundry_dataset", "fingerprint": "69da592211ce2565db37554361829b5b3475c15e28ff837502478c55bc005c9e", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"deployment_env_gap": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 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": "scott0229/scott-agent#5", "issue_number": "5", "quality_tiers": {"unresolved": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-a3b5bcf2e9a3e28b", "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: scott0229/scott-agent\nThread: scott0229/scott-agent#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: scott0229/scott-agent\nThread: scott0229/scott-agent#5\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#5\nRepo: scott0229/scott-agent\nIssue/PR number: 5\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: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'deployment_env_gap': 1, 'human_reported_issue_no_linked_fix': 1}\nOutcomes: {'not_resolved_or_not_observed': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-14b71031c1fc2ffb", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429737, "scanner": "foundry_dataset", "fingerprint": "ffa9e5b6391632a3c9e88155b9cdbafd9fb692840494e780ff04959e1055b4f6", "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": {"runtime_failure": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 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": "scott0229/scott-agent#4", "issue_number": "4", "quality_tiers": {"unresolved": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-799d1984303109a9", "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: scott0229/scott-agent\nThread: scott0229/scott-agent#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: scott0229/scott-agent\nThread: scott0229/scott-agent#4\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#4\nRepo: scott0229/scott-agent\nIssue/PR number: 4\nGraph consistency label: needs_more_evidence\nNodes: 9\nEdges: 11\nNode types: {'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'runtime_failure': 1, 'human_reported_issue_no_linked_fix': 1}\nOutcomes: {'not_resolved_or_not_observed': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-8dac6cd3696db5eb", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429736, "scanner": "foundry_dataset", "fingerprint": "ebb73fa7944dea6902b66808a466279c8a96232d6974fc766a250da1f1f68b03", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"test_ci_gap": 1, "partial blueprint fit": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 23, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 18, "node_types": {"repo": 1, "thread": 1, "comment": 1, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#3", "issue_number": "3", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-da21b7412f58c033", "graph_gold_label": "assumption_check", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: assumption_check\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#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: scott0229/scott-agent\nThread: scott0229/scott-agent#3\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#3\nRepo: scott0229/scott-agent\nIssue/PR number: 3\nGraph consistency label: assumption_check\nNodes: 18\nEdges: 23\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_no_linked_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-3d5c7029012eb898", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429735, "scanner": "foundry_dataset", "fingerprint": "bb5c9809e9874fa88bcda8e821d26c7ef67fe355ae5c7f551185e16284c9c577", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"ui_or_frontend": 1, "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": 14, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 1, "thread_has_comment_chain": 1, "comment_chain_touches_file": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 10, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#27", "issue_number": "27", "quality_tiers": {"unresolved": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-4e45abbb6960d339", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {"ui_or_frontend": 4}}, "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: scott0229/scott-agent\nThread: scott0229/scott-agent#27\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#27\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#27\nRepo: scott0229/scott-agent\nIssue/PR number: 27\nGraph consistency label: needs_more_evidence\nNodes: 10\nEdges: 14\nNode types: {'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'pr_file': 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_touches_file': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_touches_file': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'issue_chain_touches_file': 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, 'ui_or_frontend': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-de338808d995a5f2", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429734, "scanner": "foundry_dataset", "fingerprint": "1114db6a32b10f0532bb092ca536441395f5715af89a27c55fab036dffed9b6b", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"ui_or_frontend": 1, "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": 14, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 1, "thread_has_comment_chain": 1, "comment_chain_touches_file": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 10, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#26", "issue_number": "26", "quality_tiers": {"unresolved": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-2536c3336d2c1ea7", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {"ui_or_frontend": 4}}, "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: scott0229/scott-agent\nThread: scott0229/scott-agent#26\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#26\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#26\nRepo: scott0229/scott-agent\nIssue/PR number: 26\nGraph consistency label: needs_more_evidence\nNodes: 10\nEdges: 14\nNode types: {'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'pr_file': 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_touches_file': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_touches_file': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'issue_chain_touches_file': 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, 'ui_or_frontend': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-25b28d042798a3a2", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429733, "scanner": "foundry_dataset", "fingerprint": "ceace992273bad000fdc31ea2f5ee0b00c5478eece5b8ddaed208867d9a3133f", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"ui_or_frontend": 1, "agent_instruction_gap": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 14, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 1, "thread_has_comment_chain": 1, "comment_chain_touches_file": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 10, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#25", "issue_number": "25", "quality_tiers": {"unresolved": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-8e1331b97c13087b", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {"ui_or_frontend": 4}}, "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: scott0229/scott-agent\nThread: scott0229/scott-agent#25\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#25\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#25\nRepo: scott0229/scott-agent\nIssue/PR number: 25\nGraph consistency label: needs_more_evidence\nNodes: 10\nEdges: 14\nNode types: {'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'pr_file': 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_touches_file': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_touches_file': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'issue_chain_touches_file': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'ui_or_frontend': 1, 'human_reported_issue_no_linked_fix': 1}\nOutcomes: {'not_resolved_or_not_observed': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-7a213efb1fcd36c3", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429732, "scanner": "foundry_dataset", "fingerprint": "6ac7fee779e00f143006c76200b43e1798ddbd782a6759992536d2466be83798", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"ui_or_frontend": 1, "source_or_other": 1, "ui_workflow_gap": 1, "partial blueprint fit": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 29, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 2, "thread_has_comment_chain": 1, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 20, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 2, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#24", "issue_number": "24", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-49f736f7f4bd3afc", "graph_gold_label": "assumption_check", "changed_file_labels": {"ui_or_frontend": 4, "source_or_other": 4}}, "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: scott0229/scott-agent\nThread: scott0229/scott-agent#24\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#24\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#24\nRepo: scott0229/scott-agent\nIssue/PR number: 24\nGraph consistency label: assumption_check\nNodes: 20\nEdges: 29\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'pr_file': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_touches_file': 2, 'comment_chain_touches_file': 2, 'issue_chain_touches_file': 2, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'source_or_other': 1, 'ui_or_frontend': 1, 'human_reported_issue_no_linked_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-18a23c3a2e6548e9", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429731, "scanner": "foundry_dataset", "fingerprint": "913a27710f51c3dce7af5eaaaad52eef8ab5f162b263410bacb85dc9d1ddb670", "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": {"source_or_other": 1, "agent_instruction_gap": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 14, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 1, "thread_has_comment_chain": 1, "comment_chain_touches_file": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 10, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#23", "issue_number": "23", "quality_tiers": {"unresolved": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-296e918ca28cb68a", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {"source_or_other": 4}}, "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: scott0229/scott-agent\nThread: scott0229/scott-agent#23\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#23\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#23\nRepo: scott0229/scott-agent\nIssue/PR number: 23\nGraph consistency label: needs_more_evidence\nNodes: 10\nEdges: 14\nNode types: {'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'pr_file': 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_touches_file': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_touches_file': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'issue_chain_touches_file': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'source_or_other': 1, 'human_reported_issue_no_linked_fix': 1}\nOutcomes: {'not_resolved_or_not_observed': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-5ee58c5c55636472", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429730, "scanner": "foundry_dataset", "fingerprint": "ba1d0b6bf6a7a6673d41bc0f6562e37feec17b2d4f790e7749cc0cc96d31970b", "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": {"source_or_other": 1, "agent_instruction_gap": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 14, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 1, "thread_has_comment_chain": 1, "comment_chain_touches_file": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 10, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#22", "issue_number": "22", "quality_tiers": {"unresolved": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-0db9e348b62ccf53", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {"source_or_other": 4}}, "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: scott0229/scott-agent\nThread: scott0229/scott-agent#22\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#22\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#22\nRepo: scott0229/scott-agent\nIssue/PR number: 22\nGraph consistency label: needs_more_evidence\nNodes: 10\nEdges: 14\nNode types: {'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'pr_file': 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_touches_file': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_touches_file': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'issue_chain_touches_file': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'source_or_other': 1, 'human_reported_issue_no_linked_fix': 1}\nOutcomes: {'not_resolved_or_not_observed': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-2bea79057f10c5c1", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429729, "scanner": "foundry_dataset", "fingerprint": "45c558531de561eb0bfa7f9f29e7b6b9187f4c6df57d34c7270ac9a30e480b4b", "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": {"source_or_other": 1, "deployment_env_gap": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 14, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 1, "thread_has_comment_chain": 1, "comment_chain_touches_file": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 10, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#21", "issue_number": "21", "quality_tiers": {"unresolved": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-f041279d8d73b24a", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {"source_or_other": 4}}, "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: scott0229/scott-agent\nThread: scott0229/scott-agent#21\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#21\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#21\nRepo: scott0229/scott-agent\nIssue/PR number: 21\nGraph consistency label: needs_more_evidence\nNodes: 10\nEdges: 14\nNode types: {'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'pr_file': 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_touches_file': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_touches_file': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'issue_chain_touches_file': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'deployment_env_gap': 1, 'source_or_other': 1, 'human_reported_issue_no_linked_fix': 1}\nOutcomes: {'not_resolved_or_not_observed': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-6c9e21d36fa85342", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429728, "scanner": "foundry_dataset", "fingerprint": "b8d80c02a93c7e612a453297a7e5c6971328756970032da695c64fb640d61ce1", "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": {"source_or_other": 6, "agent_instruction_gap": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 29, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 6, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 6, "thread_has_comment_chain": 1, "comment_chain_touches_file": 6, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 15, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 6, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#20", "issue_number": "20", "quality_tiers": {"unresolved": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-417082ea8825ad8e", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {"source_or_other": 24}}, "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: scott0229/scott-agent\nThread: scott0229/scott-agent#20\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#20\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#20\nRepo: scott0229/scott-agent\nIssue/PR number: 20\nGraph consistency label: needs_more_evidence\nNodes: 15\nEdges: 29\nNode types: {'pr_file': 6, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 6, 'comment_chain_touches_file': 6, 'issue_chain_touches_file': 6, '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: {'source_or_other': 6, 'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'human_reported_issue_no_linked_fix': 1}\nOutcomes: {'not_resolved_or_not_observed': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-dc9c14e3f809e7f0", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429727, "scanner": "foundry_dataset", "fingerprint": "a8aab53d6920654e22a56088fc80e08ec7ccf5df6173e9447c29be28d55719bd", "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": {"partial blueprint fit": 2, "human_feedback_general": 1, "data_schema_persistence": 1, "unlinked_human_feedback": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "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": 28, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 7, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 21, "node_types": {"repo": 1, "thread": 1, "comment": 2, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 2, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#2", "issue_number": "2", "quality_tiers": {"unresolved": 4, "assumption_check": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-074821ebc6d0f4f4", "graph_gold_label": "assumption_check", "changed_file_labels": {}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: assumption_check\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#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: scott0229/scott-agent\nThread: scott0229/scott-agent#2\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#2\nRepo: scott0229/scott-agent\nIssue/PR number: 2\nGraph consistency label: assumption_check\nNodes: 21\nEdges: 28\nNode types: {'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: {'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: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'human_feedback_general': 1, 'human_reported_issue_no_linked_fix': 1, 'unlinked_human_feedback': 1, 'ambiguous_needs_more_evidence': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-ba5a46505ee28b09", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429726, "scanner": "foundry_dataset", "fingerprint": "1cf656849886f9cc1a6270030f52728c75f2440b7b59a2dd07312effc7391084", "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": {"source_or_other": 28, "agent_instruction_gap": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 63, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 28, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 1, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 37, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 28, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#18", "issue_number": "18", "quality_tiers": {"unresolved": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-53d1963adf32ac1f", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {"source_or_other": 112}}, "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: scott0229/scott-agent\nThread: scott0229/scott-agent#18\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#18\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#18\nRepo: scott0229/scott-agent\nIssue/PR number: 18\nGraph consistency label: needs_more_evidence\nNodes: 37\nEdges: 63\nNode types: {'pr_file': 28, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 28, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, '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: {'source_or_other': 28, 'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'human_reported_issue_no_linked_fix': 1}\nOutcomes: {'not_resolved_or_not_observed': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-b97f5998c5af8846", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429725, "scanner": "foundry_dataset", "fingerprint": "7989a3f08061bb924acd2370f4d8a1cbcc672761486c11ae85ac4c1ea3c0c2c1", "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": {"runtime_failure": 1, "source_or_other": 2, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 17, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 2, "thread_has_comment_chain": 1, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 11, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#16", "issue_number": "16", "quality_tiers": {"unresolved": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-b9775223f915ee9f", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {"source_or_other": 8}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#16\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: scott0229/scott-agent\nThread: scott0229/scott-agent#16\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#16\nRepo: scott0229/scott-agent\nIssue/PR number: 16\nGraph consistency label: needs_more_evidence\nNodes: 11\nEdges: 17\nNode types: {'link_quality': 3, 'pr_file': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 3, 'thread_touches_file': 2, 'comment_chain_touches_file': 2, 'issue_chain_touches_file': 2, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'source_or_other': 2, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'runtime_failure': 1, 'human_reported_issue_no_linked_fix': 1}\nOutcomes: {'not_resolved_or_not_observed': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-3a991c1acb56b04e", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429724, "scanner": "foundry_dataset", "fingerprint": "50d8e03b8ec62423389b33ed224a51cd05eefba54913e35917b56ece0c8ceb44", "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": {"source_or_other": 2, "deployment_env_gap": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 17, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 2, "thread_has_comment_chain": 1, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 11, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#13", "issue_number": "13", "quality_tiers": {"unresolved": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-88fcfff036fd86c9", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {"source_or_other": 8}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#13\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#13\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#13\nRepo: scott0229/scott-agent\nIssue/PR number: 13\nGraph consistency label: needs_more_evidence\nNodes: 11\nEdges: 17\nNode types: {'link_quality': 3, 'pr_file': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 3, 'thread_touches_file': 2, 'comment_chain_touches_file': 2, 'issue_chain_touches_file': 2, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'source_or_other': 2, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'deployment_env_gap': 1, 'human_reported_issue_no_linked_fix': 1}\nOutcomes: {'not_resolved_or_not_observed': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-61e5a0b177c1e1ce", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429723, "scanner": "foundry_dataset", "fingerprint": "a6c9f7ca6e2060b516041b313bd22747e52894fbae915e3e7b636ca04e322cde", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"test_ci_gap": 1, "source_or_other": 2, "partial blueprint fit": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 29, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 2, "thread_has_comment_chain": 1, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 20, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 2, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#12", "issue_number": "12", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-52356dbefa36c06b", "graph_gold_label": "assumption_check", "changed_file_labels": {"source_or_other": 8}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: assumption_check\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#12\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: scott0229/scott-agent\nThread: scott0229/scott-agent#12\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#12\nRepo: scott0229/scott-agent\nIssue/PR number: 12\nGraph consistency label: assumption_check\nNodes: 20\nEdges: 29\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'pr_file': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_touches_file': 2, 'comment_chain_touches_file': 2, 'issue_chain_touches_file': 2, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'source_or_other': 2, 'thread_has_human_issue_without_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_no_linked_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-5cf20c4b5d773694", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429722, "scanner": "foundry_dataset", "fingerprint": "c7b01e8d16e784da28039f3bd6d301d5441bfd33e665772e8bef1807978f9089", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"api_or_backend": 1, "api_integration_gap": 1, "partial blueprint fit": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 1, "thread_has_comment_chain": 1, "comment_chain_touches_file": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 19, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 1, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#11", "issue_number": "11", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-0a178590a9d12b0f", "graph_gold_label": "assumption_check", "changed_file_labels": {"api_or_backend": 4}}, "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: scott0229/scott-agent\nThread: scott0229/scott-agent#11\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#11\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#11\nRepo: scott0229/scott-agent\nIssue/PR number: 11\nGraph consistency label: assumption_check\nNodes: 19\nEdges: 26\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'pr_file': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_touches_file': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_touches_file': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'issue_chain_touches_file': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'api_or_backend': 1, 'human_reported_issue_no_linked_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-a07b57624b073363", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429721, "scanner": "foundry_dataset", "fingerprint": "a4a3f470c5724c1bb1f074f632f260598fc3956bb3518deff4487ce91819af03", "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": {"source_or_other": 2, "deployment_env_gap": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 17, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 2, "thread_has_comment_chain": 1, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 11, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 2, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#10", "issue_number": "10", "quality_tiers": {"unresolved": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-61bbe5615f034cf1", "graph_gold_label": "needs_more_evidence", "changed_file_labels": {"source_or_other": 8}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: needs_more_evidence\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#10\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#10\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#10\nRepo: scott0229/scott-agent\nIssue/PR number: 10\nGraph consistency label: needs_more_evidence\nNodes: 11\nEdges: 17\nNode types: {'link_quality': 3, 'pr_file': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 3, 'thread_touches_file': 2, 'comment_chain_touches_file': 2, 'issue_chain_touches_file': 2, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'source_or_other': 2, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'deployment_env_gap': 1, 'human_reported_issue_no_linked_fix': 1}\nOutcomes: {'not_resolved_or_not_observed': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-a0985745aa3f72c6", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 429720, "scanner": "foundry_dataset", "fingerprint": "7c994be76be3a8ee8535d2ca903ec9fbe7530d13b9b3cf1e1e3537616c9ad0be", "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": {"agent_instruction_gap": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 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": "scott0229/scott-agent#1", "issue_number": "1", "quality_tiers": {"unresolved": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-81d11773b9e783ef", "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: scott0229/scott-agent\nThread: scott0229/scott-agent#1\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#1\nGraph gold label: needs_more_evidence\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#1\nRepo: scott0229/scott-agent\nIssue/PR number: 1\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: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'human_reported_issue_no_linked_fix': 1}\nOutcomes: {'not_resolved_or_not_observed': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-8e2aa367ba9cd1b5", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: scott0229/scott-agent"}, "properties": {"repobilityId": 403583, "scanner": "foundry_dataset", "fingerprint": "e45504620b1765f6806845e28422b9875804fb1bf2b41ae1d0629a0e54ba9f10", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"test_ci_gap": 1, "partial blueprint fit": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 23, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 18, "node_types": {"repo": 1, "thread": 1, "comment": 1, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#3", "issue_number": "3", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-12103faab3ec0515", "graph_gold_label": "assumption_check", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: assumption_check\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#3\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#3\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#3\nRepo: scott0229/scott-agent\nIssue/PR number: 3\nGraph consistency label: assumption_check\nNodes: 18\nEdges: 23\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_no_linked_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-e7cd66d83cbcd704", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: scott0229/scott-agent"}, "properties": {"repobilityId": 403582, "scanner": "foundry_dataset", "fingerprint": "6edf0cf18b9e525b190246b8c43be535f51385fe6053621c17104ebcb86f8cf3", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"ui_or_frontend": 1, "source_or_other": 1, "ui_workflow_gap": 1, "partial blueprint fit": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 29, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 2, "thread_has_comment_chain": 1, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 20, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 2, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#24", "issue_number": "24", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-ca492aab91ab71ba", "graph_gold_label": "assumption_check", "changed_file_labels": {"ui_or_frontend": 4, "source_or_other": 4}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: assumption_check\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#24\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#24\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#24\nRepo: scott0229/scott-agent\nIssue/PR number: 24\nGraph consistency label: assumption_check\nNodes: 20\nEdges: 29\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'pr_file': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_touches_file': 2, 'comment_chain_touches_file': 2, 'issue_chain_touches_file': 2, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'source_or_other': 1, 'ui_or_frontend': 1, 'human_reported_issue_no_linked_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-934f725f46a7b534", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: scott0229/scott-agent"}, "properties": {"repobilityId": 403581, "scanner": "foundry_dataset", "fingerprint": "0afd9b1fd2e965a9fab29ba8bd88a9abdff99adb63efc5604cbcb3a50d900608", "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": {"partial blueprint fit": 2, "human_feedback_general": 1, "data_schema_persistence": 1, "unlinked_human_feedback": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "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": 28, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 7, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 21, "node_types": {"repo": 1, "thread": 1, "comment": 2, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 2, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#2", "issue_number": "2", "quality_tiers": {"unresolved": 4, "assumption_check": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-86548b06d73525d0", "graph_gold_label": "assumption_check", "changed_file_labels": {}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: assumption_check\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#2\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#2\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#2\nRepo: scott0229/scott-agent\nIssue/PR number: 2\nGraph consistency label: assumption_check\nNodes: 21\nEdges: 28\nNode types: {'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: {'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: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'human_feedback_general': 1, 'human_reported_issue_no_linked_fix': 1, 'unlinked_human_feedback': 1, 'ambiguous_needs_more_evidence': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 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/scott0229/scott-agent", "source_id": "graph-query-motif_query-42837b75cc35fa5c", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: scott0229/scott-agent"}, "properties": {"repobilityId": 403580, "scanner": "foundry_dataset", "fingerprint": "cc6c4bdf245d26711c230243aa5ea0cb0567d3784266857aa3fa69125a5e54dc", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"bug_fix": 1, "api_or_backend": 1, "docs_or_claims": 1, "source_or_other": 8, "api_integration_gap": 1, "partial blueprint fit": 2, "mostly follows blueprint": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 54, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 10, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 10, "thread_has_comment_chain": 1, "comment_chain_links_commit": 1, "comment_chain_touches_file": 10, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 29, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 1, "pr_file": 10, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#19", "issue_number": "19", "quality_tiers": {"assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-519f6933919097c6", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"api_or_backend": 4, "docs_or_claims": 4, "source_or_other": 32}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#19\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#19\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#19\nRepo: scott0229/scott-agent\nIssue/PR number: 19\nGraph consistency label: weak_supervision_needs_review\nNodes: 29\nEdges: 54\nNode types: {'pr_file': 10, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 10, 'comment_chain_touches_file': 10, 'issue_chain_touches_file': 10, 'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_links_commit': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'source_or_other': 8, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'docs_or_claims': 1, 'api_or_backend': 1, 'human_reported_issue_then_fix_attempt': 1, 'bug_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-2cde4a4e77d22365", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: scott0229/scott-agent"}, "properties": {"repobilityId": 403579, "scanner": "foundry_dataset", "fingerprint": "c5f8dda4c0f60ea7109a3cc90aa99dc131fac68d38c822e2729c831dd31ef995", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"bug_fix": 1, "test_ci_gap": 1, "source_or_other": 24, "partial blueprint fit": 2, "mostly follows blueprint": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 72, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 24, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 1, "comment_chain_links_commit": 1, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 43, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 1, "pr_file": 24, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#17", "issue_number": "17", "quality_tiers": {"assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-f5fe57066d4a7b8a", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"source_or_other": 96}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#17\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#17\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#17\nRepo: scott0229/scott-agent\nIssue/PR number: 17\nGraph consistency label: weak_supervision_needs_review\nNodes: 43\nEdges: 72\nNode types: {'pr_file': 24, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 24, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_links_commit': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'source_or_other': 24, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'bug_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-4653ee75ae70fafe", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: scott0229/scott-agent"}, "properties": {"repobilityId": 403578, "scanner": "foundry_dataset", "fingerprint": "8a63ddef3fea8a28df952a9236c1ef270a415d1f1385aa48cc90caa084a8c0b6", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"bug_fix": 5, "test_ci_gap": 1, "source_or_other": 34, "partial blueprint fit": 2, "mostly follows blueprint": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 86, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 34, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 57, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 34, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#15", "issue_number": "15", "quality_tiers": {"assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-db1ef4fc0f282923", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"source_or_other": 136}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#15\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: scott0229/scott-agent\nThread: scott0229/scott-agent#15\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#15\nRepo: scott0229/scott-agent\nIssue/PR number: 15\nGraph consistency label: weak_supervision_needs_review\nNodes: 57\nEdges: 86\nNode types: {'pr_file': 34, 'link_quality': 6, 'commit': 5, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 34, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 6, 'comment_chain_links_commit': 5, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'source_or_other': 34, 'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-86209932ee242c53", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: scott0229/scott-agent"}, "properties": {"repobilityId": 403577, "scanner": "foundry_dataset", "fingerprint": "59bd08d81732c53041f6b38ff7ac501ed3351df8aef9781bc069925c3723ae91", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"bug_fix": 2, "test_ci_gap": 1, "source_or_other": 13, "partial blueprint fit": 2, "mostly follows blueprint": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 62, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 13, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 1, "comment_chain_links_commit": 2, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 33, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 1, "pr_file": 13, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#14", "issue_number": "14", "quality_tiers": {"assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-8c815599813e22d8", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"source_or_other": 52}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: weak_supervision_needs_review\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#14\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#14\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#14\nRepo: scott0229/scott-agent\nIssue/PR number: 14\nGraph consistency label: weak_supervision_needs_review\nNodes: 33\nEdges: 62\nNode types: {'pr_file': 13, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 13, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'comment_chain_links_commit': 2, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'source_or_other': 13, 'claimed_resolved_unverified': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-bb83981e76816c81", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: scott0229/scott-agent"}, "properties": {"repobilityId": 403576, "scanner": "foundry_dataset", "fingerprint": "83888cfd569baca2dadecee4d36f9e130c0a2612685a774e1f0ff58454c3d8a8", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"test_ci_gap": 1, "source_or_other": 2, "partial blueprint fit": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 29, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 2, "thread_has_comment_chain": 1, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 20, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 2, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#12", "issue_number": "12", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-ddb8c7f70365b9ea", "graph_gold_label": "assumption_check", "changed_file_labels": {"source_or_other": 8}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: assumption_check\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#12\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#12\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#12\nRepo: scott0229/scott-agent\nIssue/PR number: 12\nGraph consistency label: assumption_check\nNodes: 20\nEdges: 29\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'pr_file': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_touches_file': 2, 'comment_chain_touches_file': 2, 'issue_chain_touches_file': 2, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'source_or_other': 2, 'thread_has_human_issue_without_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_no_linked_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-002c9e1ef8618770", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: scott0229/scott-agent"}, "properties": {"repobilityId": 403575, "scanner": "foundry_dataset", "fingerprint": "da884ca65db79beb8424ec2a0a8bc978d9d7ee1fc55ddfed7e3054d36e5fa14a", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"api_or_backend": 1, "api_integration_gap": 1, "partial blueprint fit": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 26, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 1, "thread_has_comment_chain": 1, "comment_chain_touches_file": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 19, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 1, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#11", "issue_number": "11", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-7a717844ff4f809b", "graph_gold_label": "assumption_check", "changed_file_labels": {"api_or_backend": 4}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: assumption_check\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#11\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#11\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#11\nRepo: scott0229/scott-agent\nIssue/PR number: 11\nGraph consistency label: assumption_check\nNodes: 19\nEdges: 26\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'pr_file': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_touches_file': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_touches_file': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'issue_chain_touches_file': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'api_or_backend': 1, 'human_reported_issue_no_linked_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-545497a4696fbf50", "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": "scott0229/scott-agent", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: scott0229/scott-agent"}, "properties": {"repobilityId": 382084, "scanner": "foundry_dataset", "fingerprint": "04ccdc1c0738f3972d76a1eb38f0751cd0ea7b2f7f416ec0ff6f54d4811674f8", "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": "scott0229/scott-agent#9", "human_labels": ["deployment_env_gap", "source_or_other"], "issue_number": "9", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.607, "repo_full_name": "scott0229/scott-agent", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-c792da10eb3c26ca", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 2}, "linked_commit_count": 3, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: assumption_checks\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#9\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#9\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'deployment_env_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-d1d04fed7ad56496\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/9\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/9\\nTitle: content(blog/1): tighten ratchet section\\nBody:\\n## Summary\\n- Fix cycle 5 strike in the 5-roll simulation table: `690` to `688` (was inconsistent with the rest of the ratchet pattern)\\n- Update trailing sentence: `\u5c11 2 \u9ede` to `\u5c11 4 \u9ede`\\n- Rewrite point 2 of `\u5e38\u898b\u53cd\u99c1 1` so the framing matches what the table actually shows: the damage isn't \\\"don't roll up\\\" - it's that you DO roll up on rebounds but never quite catch the original strike (residual IV + partial price recovery), so premium shrinks again each cycle\\n\\nProduction DB already updated. This keeps draft + seed script in sync.\\n\\nGenerated with [Claude Code](https://claude.com/claude-code)\\n\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-53d5c887a51cbc3c\",\n    \"filename\": \"blog-drafts/put-strike-adjustment.html\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 3,\n    \"changes\": 6,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/521920160644bd75b1f32362f456779a7fcbf2e3/blog-drafts%2Fput-strike-adjustment.html\"\n  },\n  {\n    \"id\": \"github-pr-file-file-403ac8118eeab542\",\n    \"filename\": \"scripts/update-blog-put-strike.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 3,\n    \"changes\": 6,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/521920160644bd75b1f32362f456779a7fcbf2e3/scripts%2Fupdate-blog-put-strike.mjs\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-179d03ad274f638f\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-assumption_checks-6f37a7110c11833b", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: scott0229/scott-agent"}, "properties": {"repobilityId": 382083, "scanner": "foundry_dataset", "fingerprint": "8c71d7a4832eca4d29daec2f417d1b3a77e1831f9bff728fd00fbfc782bd63d6", "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": "scott0229/scott-agent#8", "human_labels": ["deployment_env_gap", "source_or_other"], "issue_number": "8", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.59, "repo_full_name": "scott0229/scott-agent", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-6939cbbd1baf7ed9", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 2}, "linked_commit_count": 2, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: assumption_checks\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#8\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#8\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 2\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'deployment_env_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-2bc4688e711ac177\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/8\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/8\\nTitle: content(blog/1): callouts + defenses + plain-language wording\\nBody:\\n## Summary\\nMajor content iteration on the first blog post.\\n\\n### Chart annotations\\n- `buffer 2.4%` / `buffer 3.2%` inline on the distance chart\\n- `Sell PUT \uff0f` prefix on the premium-shrinkage chart title\\n\\n### New callouts (already live in production DB)\\n- \ud83d\udfe2 **\u2713 \u6700\u4f73\u5224\u65b7** \u2014 case-specific verdict (keep 692 strike)\\n- \ud83d\udd35 **\ud83d\udcca \u6b77\u53f2\u6578\u64da\u4f50\u8b49** \u2014 QQQ historical daily-drop stats backing the 2.4% buffer claim\\n- \ud83d\udfe1 **\ud83d\udcac \u5e38\u898b\u53cd\u99c1 \u2460** \u2014 delta-based defense + 5-roll simulation table showing asymmetric ratchet effect\\n- \ud83d\udfe1 **\ud83d\udcac \u5e38\u898b\u53cd\u99c1 \u2461** \u2014 TA / 5MA-based defense + 4 counterpoints\\n\\n### Copy\\n- Plain-language for option-Greek terms (no `theta + IV mean reversion` jargon)\\n- `TA` \u2192 `\u6280\u8853\u5206\u6790`\\n- Drop an incorrect specific example (`5/12 \u8dcc\u7834 5MA`) that doesn't match the chart data\\n- `\u9031\u6b21` \u2192 `\u5c55\u671f\u6b21\u6578` (rolls aren't always weekly)\\n- `(\u6700\u4f73)` annotation on the small-adjustment principle\\n\\nProduction DB already updated via `scripts/update-blog-put-strike.mjs`. This PR keeps the draft + seed \"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-a8fe2f9e741f7ac6\",\n    \"filename\": \"blog-drafts/put-strike-adjustment.html\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 59,\n    \"deletions\": 4,\n    \"changes\": 63,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/b874695500b8ed0b8b49c74f1fa6d944f1c5cc39/blog-drafts%2Fput-strike-adjustment.html\"\n  },\n  {\n    \"id\": \"github-pr-file-file-a39049b4e7ea536c\",\n    \"filename\": \"scripts/update-blog-put-strike.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 58,\n    \"deletions\": 3,\n    \"changes\": 61,\n    \"blob_url\": \"https://github.com/scott0229/\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-assumption_checks-b5d540871a1066ea", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: scott0229/scott-agent"}, "properties": {"repobilityId": 382082, "scanner": "foundry_dataset", "fingerprint": "349af727b4f82bbb50bb4bc98e7d409ab3007c6fd0bf6043566db7b1f8d80234", "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": "scott0229/scott-agent#7", "human_labels": ["deployment_env_gap"], "issue_number": "7", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.607, "repo_full_name": "scott0229/scott-agent", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-fc1a397745a95fda", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 1, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: assumption_checks\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#7\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#7\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'deployment_env_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-bc1a079a74f4486b\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/7\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/7\\nTitle: content(blog/1): 20-day chart + 5d MA + sharper strike-choice framing\\nBody:\\n## Summary\\nIterating on the first blog post based on author feedback.\\n\\n### Chart\\n- Expand from 6 trading days to **20 trading days** (4/20 \u2192 5/15)\\n- Add a **5-day moving average** line (softer light blue so the daily close stays the focal series)\\n- Move `$708.93` highlight below the red 5/15 dot to clear the descending price line\\n- Move `$692 strike` label below the dashed line and add breathing room\\n\\n### Copy\\n- `\u539f\u672c\u7684 put \u5373\u5c07\u5931\u6548` \u2192 `\u539f\u672c\u7684 sell put \u5373\u5c07\u5931\u6548`\\n- Rewrite the three-choice section around the actual decision the trader faced (**keep strike / small drop 1-2pt / large drop 5pt+**), rather than generic ATM-vs-OTM positioning\\n- `\u9760\u7684\u5c31\u662f\u7a69\u5b9a\u5730\u6536\u9019\u4e9b\u6b0a\u5229\u91d1` \u2192 `\u9760\u7684\u662f\u7a69\u5b9a\u5730\u6536\u9019\u4e9b\u5fae\u8584\u7684\u6b0a\u5229\u91d1` to underline how thin sell-side premium is per trade\\n\\nProduction DB already updated via `scripts/update-blog-put-strike.mjs`. This commit keeps the draft + seed script in sync.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-29e6a7062dc27483\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"artifact_supports_verification\": 10, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 11, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurre\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-assumption_checks-ce7c33320db33385", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: scott0229/scott-agent"}, "properties": {"repobilityId": 382081, "scanner": "foundry_dataset", "fingerprint": "2bbee5283ae662ad3dcb3c4a39ded5d43b9729af9e0daf22048e8d3d747e92e8", "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": "scott0229/scott-agent#6", "human_labels": ["deployment_env_gap"], "issue_number": "6", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.625, "repo_full_name": "scott0229/scott-agent", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-33f3a8565fbef0e6", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 1, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: assumption_checks\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#6\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#6\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'deployment_env_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-dc854b11dc977adb\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/6\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/6\\nTitle: fix(blog): keep $692 strike label inside SVG viewBox\\nBody:\\n## Summary\\nThe `$692 strike` text label in the QQQ history chart sat at `x=544` with default text-anchor (start), so the text ran past the 560-wide viewBox right edge and got clipped by the SVG's implicit `overflow: hidden`. Anchor it to the line's right end (`x=540`, `text-anchor=end`) and place it just above the dashed strike line.\\n\\nProduction DB already updated via the seed script. This commit keeps the draft + seed script in sync.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-880ffbb61e1804ae\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"artifact_supports_verification\": 10, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 11, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"ci\": 1, \"docs\": 1, \"schemas\": 8, \"tests\": 1}\nHelicopter views: {\"graphs\": 2, \"schemas\": 2}\nBundle labels: {\"source_backed_architecture_schema_bundle\": 1}\nCo-occurrence labels: {\"architecture_data_consistency_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-assumption_checks-bf9eb71fe1c8ee3c", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: scott0229/scott-agent"}, "properties": {"repobilityId": 382080, "scanner": "foundry_dataset", "fingerprint": "9ee02c8f543702748673767b885f57c1fe02e89a8f00b0c619a94b7893a9598d", "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": "scott0229/scott-agent#27", "human_labels": ["human_feedback_general", "ui_or_frontend"], "issue_number": "27", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-95e2d05b0d5c7918", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 1}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: assumption_checks\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#27\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#27\nRepo: scott0229/scott-agent\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: 1\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-731fb95755a0a66d\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/27\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/27\\nTitle: style(blog): revert to gentler category tints (900/40)\\nBody:\\nRoll back PR #26 (800/60 was too strong). Restore PR #25 settings: bg-{color}-900/40, border-{color}-700/70, hover:border-{color}-500.\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-b37b45ae04bc6e9c\",\n    \"filename\": \"src/app/blog/page.tsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 3,\n    \"changes\": 6,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/1ed2bf767cfbc99f13f90e5618ef8715dce61fbb/src%2Fapp%2Fblog%2Fpage.tsx\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-a4d1004c174da87d\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"artifact_supports_verification\": 10, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 11, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"ci\": 1, \"docs\": 1, \"schemas\": 8, \"tests\": 1}\nHelicopter views: {\"graphs\": 2, \"schemas\": 2}\nBundle labels: {\"source_backed_architecture_schema_bundle\": 1}\nCo-occurrence labels: {\"architecture_data_consistency_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-assumption_checks-2c5b4a106b8d1db0", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: scott0229/scott-agent"}, "properties": {"repobilityId": 382079, "scanner": "foundry_dataset", "fingerprint": "f22f47c26e1f522c5583bde4cb7567fb1ddd371da7eb32e5267b98a60da14c15", "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": "scott0229/scott-agent#26", "human_labels": ["human_feedback_general", "ui_or_frontend"], "issue_number": "26", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-04404656594da697", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 1}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: assumption_checks\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#26\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#26\nRepo: scott0229/scott-agent\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: 1\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-9d49a0e6f282df58\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/26\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/26\\nTitle: style(blog): bump category tints again (800/60)\\nBody:\\nStronger tint \u2014 switch to 800-shade base with 60% opacity and solid 600 borders.\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-d73ba2d2c9485d24\",\n    \"filename\": \"src/app/blog/page.tsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 3,\n    \"changes\": 6,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/c1385eb4a149b54074519626a1a7f3b5fae00616/src%2Fapp%2Fblog%2Fpage.tsx\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-ca3083fa728aa8fc\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"artifact_supports_verification\": 10, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 11, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"ci\": 1, \"docs\": 1, \"schemas\": 8, \"tests\": 1}\nHelicopter views: {\"graphs\": 2, \"schemas\": 2}\nBundle labels: {\"source_backed_architecture_schema_bundle\": 1}\nCo-occurrence labels: {\"architecture_data_consistency_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-assumption_checks-25e551951f9f678d", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: scott0229/scott-agent"}, "properties": {"repobilityId": 382078, "scanner": "foundry_dataset", "fingerprint": "6629b11cf147056f86577311eef6f9cdb0b2910dee02145f8507a42afb876750", "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": "scott0229/scott-agent#19", "human_labels": ["api_integration_gap", "api_or_backend", "docs_or_claims", "source_or_other"], "issue_number": "19", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.59, "repo_full_name": "scott0229/scott-agent", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-dcae22f61e4ce049", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 10, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"api_or_backend": 1, "docs_or_claims": 1, "source_or_other": 8}, "linked_commit_count": 1, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: assumption_checks\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#19\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#19\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 10\nLabels: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'docs_or_claims': 1, 'source_or_other': 8, 'api_or_backend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-810f31f337cb98c3\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/19\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/19\\nTitle: feat(blog): sort by created_at + case-study title scheme\\nBody:\\n## Summary\\n- **Sort change**: `src/app/api/blog/route.ts` now does `ORDER BY created_at DESC` (was `published_at DESC, created_at DESC`). This makes the blog listing follow creation order, which matches how case studies get written out-of-chronological-order.\\n- **Title scheme**: case-study posts renamed to \\\"\u6848\u4f8b N\uff1a\\\" prefix (N follows creation order, video skipped). Includes title rewrites for blogs #1, #3, #4 from the recent iteration.\\n- **Tag merge**: `PUT`/`CALL` + `\u8ce3\u65b9` collapsed into single tags `SELL PUT` / `SELL CALL` for cases #1, #3, #4, #5.\\n\\n## Test plan\\n- [ ] Refresh https://scott-agent.com/blog and confirm order is now: \u6848\u4f8b 4, \u6848\u4f8b 3, \u6848\u4f8b 2, \u5f71\u7247, \u6848\u4f8b 1.\\n- [ ] Confirm tags on each card show `SELL PUT` / `SELL CALL` (not the old `PUT \u8ce3\u65b9` pair).\\n- [ ] Confirm titles read as \\\"\u6848\u4f8b N\uff1a...\\\" for the four case studies.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-bf0bce18b4d02a76\",\n    \"filename\": \"README.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 20,\n    \"deletions\": 0,\n    \"changes\": 20,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/c92b8658d74e1c3af72160c9ab4f23608a597595/README.md\"\n  },\n  {\n    \"id\": \"github-pr-file-file-3116be973ebb978f\",\n    \"filename\": \"scripts/update-blog-1-tags-sell-put.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 19,\n    \"deletions\": 0,\n    \"changes\": 19,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/c92b8658d74e1c3af72160c9ab4f23608a597595/scripts%2Fupdate-blog-\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-assumption_checks-b7dad7a5b8e83e19", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: scott0229/scott-agent"}, "properties": {"repobilityId": 382077, "scanner": "foundry_dataset", "fingerprint": "816fa02f99d77abf7f6bceafaa98e330820de2864da4c81b3736b80f237de3d5", "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": "scott0229/scott-agent#17", "human_labels": ["source_or_other", "test_ci_gap"], "issue_number": "17", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.625, "repo_full_name": "scott0229/scott-agent", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-7a17fd154dd3cf4d", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 24, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 24}, "linked_commit_count": 1, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: assumption_checks\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#17\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#17\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 24\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 24}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-ad6522c3bab05539\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/17\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/17\\nTitle: chore(blog/4): seed scripts from this iteration\\nBody:\\n## Summary\\n24 one-off helper scripts used to iterate on blog post #4 (COPX sell call defense case study). All effects are already live in production; this commit preserves the record.\\n\\n### Highlights\\n- **Trade card**: timestamp (`5/14 10:12 AM`) + estimated price range + COPX cost basis (`$80.54`)\\n- **Hero chart**: rewritten as a 10-day view (5/4 to 5/15); both strike labels moved to the LEFT of the chart so the green data line doesn't cross through them; Y-axis price labels moved to the RIGHT; chart margins equalized to ~24 px both sides via viewBox shift; chart title nudged so it doesn't clip the new viewBox edge; remove `$89.38` / `$83.05` inline labels and the trade-day red dot for a cleaner look\\n- **Defense section** rewritten around cost basis: \\\"\u6839\u672c\u4e0d\u9700\u8981 defend\\\" (assignment at $88 = +9.3% on $80.54 cost basis) is now the PRIMARY argument; \\\"\u5c31\u7b97\u8981 defend\uff0c+4 \u4e5f\u592a\u591a\\\" is now SECONDARY\\n- **Red callout**: brightened text + bumped bg opacity so it stays readabl\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-3e8639254d564479\",\n    \"filename\": \"scripts/update-blog-4-92-strike-left.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 30,\n    \"deletions\": 0,\n    \"changes\": 30,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/a8b0116ca3a528a3af8d92ef9dda504112dd8403/scripts%2Fupdate-blog-4-92-strike-left.mjs\"\n  },\n  {\n    \"id\": \"github-pr-file-file-ba0898ccebb5601a\",\n    \"filename\": \"scripts/update-blog-4-add-time.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 36,\n    \"deletions\": 0,\n    \"changes\": 36,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/a8b\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-assumption_checks-c14917b288e70cec", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: scott0229/scott-agent"}, "properties": {"repobilityId": 382076, "scanner": "foundry_dataset", "fingerprint": "6d5959467501a11e74cd80124bf01fb6ec54b3e2a78f37cf3caa4bc0c6886c5a", "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": "scott0229/scott-agent#15", "human_labels": ["source_or_other", "test_ci_gap"], "issue_number": "15", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.625, "repo_full_name": "scott0229/scott-agent", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-c3b23712c3377d1f", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 34, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 34}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: assumption_checks\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#15\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#15\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 34\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 34}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-791b7d7f1af0cbec\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/15\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/15\\nTitle: chore(blog/3): second batch of seed scripts\\nBody:\\n## Summary\\nSecond batch of one-off helper scripts (34 of them) used to iterate on blog post #3. All effects are already live in the production DB; this commit preserves the record.\\n\\n### Highlights of what those scripts did\\n- Replace all `roll` / `Roll` \u2192 `\u5c55\u671f` throughout the body\\n- Add SELL PUT clarifier to bullets / h3 / chart titles; switch contract notation to `May'12` / `May'13`\\n- Insert a strike-buffer chart mirroring blog/1, iterate on its spacing + label placement\\n- Collapse roll-options table from 4 columns to 2; rewrite each row to continuous-sentence format with \u2705 / \u274c tags\\n- Renumber roll options A/B/C/D to 1/2/3/4\\n- Refresh the entire viability framing once 2 (premium near 0) and 3 (buffer already large) became \u4e0d\u53ef\u884c in this case: analysis bullets, red callout, \u53cd\u99c1 callout, and \u7e3d\u7d50 framework all rewritten so the article is internally consistent\\n- Drop the \u5e95\u7dda blockquote (redundant with \u7e3d\u7d50 callout)\\n- Reduce excess bold tags in prose; switch a chunk of\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-75938de4c82e5055\",\n    \"filename\": \"scripts/update-blog-3-2dte-sellput.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 30,\n    \"deletions\": 0,\n    \"changes\": 30,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/0d1abcee41f2753055b5bffab436e074f11fa69f/scripts%2Fupdate-blog-3-2dte-sellput.mjs\"\n  },\n  {\n    \"id\": \"github-pr-file-file-9711d72c0bce5051\",\n    \"filename\": \"scripts/update-blog-3-active-choice.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 30,\n    \"deletions\": 0,\n    \"changes\": 30,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/0d\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-assumption_checks-d1fd3c111a6a847c", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: scott0229/scott-agent"}, "properties": {"repobilityId": 382075, "scanner": "foundry_dataset", "fingerprint": "311e0853a6a887b3fc24997181e86e6a77a7efa87444d7318a976ab5c3ed42dc", "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": "scott0229/scott-agent#14", "human_labels": ["source_or_other", "test_ci_gap"], "issue_number": "14", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.625, "repo_full_name": "scott0229/scott-agent", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-f88ac04622bd0f90", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 13, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 13}, "linked_commit_count": 2, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: assumption_checks\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#14\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#14\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 2\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 13\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 13}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-ed697da19f86337c\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/14\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/14\\nTitle: chore(blog/3): seed scripts from this iteration\\nBody:\\n## Summary\\nA series of 13 one-off helper scripts used to iterate on blog post #3 (`\u6848\u4f8b\u89e3\u8b80\uff1a2026/5/11 \u5c55\u671f\u53ea\u8cfa 0.9...`). All effects are already live in the production DB; this commit preserves the record.\\n\\n### What changed in blog #3\\n- Hero chart: drop the 651 strike line, keep only the 646 line\\n- Intro: rewrite + merge into a single tight background paragraph\\n- Roll bullets: clarify they're sell puts, switch to `May'12` / `May'13` notation\\n- New strike-buffer chart (mirror of blog/1): visualizes the 5pt / 0.7% move against the 67pt / 9.4% base safety distance\\n- Roll options renumbered A-D to 1-4 across the table, bullets, heading, and paragraph references\\n- Add `(\u98a8\u96aa\u7279\u6027)` gloss to the first `risk profile` mention\\n\\nNo app code changes. CI will do a no-op deploy.\\n\\nGenerated with [Claude Code](https://claude.com/claude-code)\\n\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-e993ea6c4f54803f\",\n    \"filename\": \"scripts/update-blog-3-abcd-to-1234.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 52,\n    \"deletions\": 0,\n    \"changes\": 52,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/3495fcbb14a2ca3b4dd0b964e823e7b003342662/scripts%2Fupdate-blog-3-abcd-to-1234.mjs\"\n  },\n  {\n    \"id\": \"github-pr-file-file-d3ca2bdbe1c18c61\",\n    \"filename\": \"scripts/update-blog-3-buffer-chart.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 73,\n    \"deletions\": 0,\n    \"changes\": 73,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/3495fcbb14a2ca3b4dd0b964e823e7b003342662/scripts%2Fupdate-blog-3-buffer-chart.mjs\"\n  },\n  {\n    \"id\": \"github-pr-file-file-15cf481761929c68\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-assumption_checks-227a818594c5647f", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 420007, "scanner": "foundry_dataset", "fingerprint": "4ae9c77e57bf4ad6ac52433107ab610497447a36a047e6747ffd10ee15e77a9c", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"test_ci_gap": 1, "partial blueprint fit": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 23, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 18, "node_types": {"repo": 1, "thread": 1, "comment": 1, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#3", "issue_number": "3", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-a566ca3b8a18b1ba", "graph_gold_label": "assumption_check", "changed_file_labels": {}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: assumption_check\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#3\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#3\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#3\nRepo: scott0229/scott-agent\nIssue/PR number: 3\nGraph consistency label: assumption_check\nNodes: 18\nEdges: 23\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_no_linked_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-93acea9927b74ea9", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 420006, "scanner": "foundry_dataset", "fingerprint": "79cd019d9592b0453aefd73847d8651be765d4085757336b437690de71765fbf", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 1, "test_ci_gap": 1, "source_or_other": 24, "partial blueprint fit": 2, "mostly follows blueprint": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 72, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 24, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 1, "comment_chain_links_commit": 1, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 43, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 1, "pr_file": 24, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#17", "issue_number": "17", "quality_tiers": {"assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-53c49d1aca167b7b", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"source_or_other": 96}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: weak_supervision_needs_review\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#17\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#17\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#17\nRepo: scott0229/scott-agent\nIssue/PR number: 17\nGraph consistency label: weak_supervision_needs_review\nNodes: 43\nEdges: 72\nNode types: {'pr_file': 24, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 24, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_links_commit': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'source_or_other': 24, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'bug_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-f5d983ae866ddca5", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 420005, "scanner": "foundry_dataset", "fingerprint": "b6469ccde73ede2dc9064267cc8a33a8f806ad03145bfd3af14207117f1cbfbf", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 5, "test_ci_gap": 1, "source_or_other": 34, "partial blueprint fit": 2, "mostly follows blueprint": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 86, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 34, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 57, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 34, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#15", "issue_number": "15", "quality_tiers": {"assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-c36777c20b7f1bf7", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"source_or_other": 136}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: weak_supervision_needs_review\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#15\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#15\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#15\nRepo: scott0229/scott-agent\nIssue/PR number: 15\nGraph consistency label: weak_supervision_needs_review\nNodes: 57\nEdges: 86\nNode types: {'pr_file': 34, 'link_quality': 6, 'commit': 5, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 34, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 6, 'comment_chain_links_commit': 5, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'source_or_other': 34, 'bug_fix': 5, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-1c1215f0ca34658c", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 420004, "scanner": "foundry_dataset", "fingerprint": "a5fe6cf58a80decfbd7704141d2aa46fbce99173ce3b22bea4157113f2cf09df", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 2, "test_ci_gap": 1, "source_or_other": 13, "partial blueprint fit": 2, "mostly follows blueprint": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 62, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 13, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 1, "comment_chain_links_commit": 2, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 33, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 1, "pr_file": 13, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#14", "issue_number": "14", "quality_tiers": {"assumption_check": 3, "weak_supervision": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-aba41c9b92bf9a17", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"source_or_other": 52}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: weak_supervision_needs_review\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#14\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#14\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#14\nRepo: scott0229/scott-agent\nIssue/PR number: 14\nGraph consistency label: weak_supervision_needs_review\nNodes: 33\nEdges: 62\nNode types: {'pr_file': 13, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 13, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'comment_chain_links_commit': 2, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'source_or_other': 13, 'claimed_resolved_unverified': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-28257b9b842a1bcb", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: scott0229/scott-agent"}, "properties": {"repobilityId": 420003, "scanner": "foundry_dataset", "fingerprint": "a550de792c53e20f69402e1e61da58f99f9748b8fa1f80c3e1da70463da6bb5d", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"test_ci_gap": 1, "source_or_other": 2, "partial blueprint fit": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 29, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 2, "thread_has_comment_chain": 1, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 20, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 2, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#12", "issue_number": "12", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-36935b92035dea8d", "graph_gold_label": "assumption_check", "changed_file_labels": {"source_or_other": 8}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: assumption_check\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#12\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#12\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#12\nRepo: scott0229/scott-agent\nIssue/PR number: 12\nGraph consistency label: assumption_check\nNodes: 20\nEdges: 29\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'pr_file': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'thread_touches_file': 2, 'comment_chain_touches_file': 2, 'issue_chain_touches_file': 2, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'not_resolved_or_not_observed': 3, 'source_or_other': 2, 'thread_has_human_issue_without_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'human_reported_issue_no_linked_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-0ebd9bb811dd7fc6", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/test_ci_gap_after_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_schema_ui_api_gap", "level": "error", "message": {"text": "Foundry mined schema ui api mismatch: scott0229/scott-agent"}, "properties": {"repobilityId": 411115, "scanner": "foundry_dataset", "fingerprint": "a6019161e29e8f370b7bf5afc01a2fc71e3db466a6b941ef1d8f95004d857012", "category": "quality", "severity": "high", "confidence": 0.76, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Schema, UI, and API mismatch", "intent": "Assumption-check examples for data-path consistency across layers.", "labels": {"partial blueprint fit": 2, "human_feedback_general": 1, "data_schema_persistence": 1, "unlinked_human_feedback": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "ambiguous_needs_more_evidence": 1, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"not_resolved_or_not_observed": 6, "ambiguous_needs_more_evidence": 2}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 28, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 7, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "thread_has_comment_chain": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 21, "node_types": {"repo": 1, "thread": 1, "comment": 2, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 7, "comment_chain": 2, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "scott0229/scott-agent#2", "issue_number": "2", "quality_tiers": {"unresolved": 4, "assumption_check": 3}, "repo_full_name": "scott0229/scott-agent", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-00d2990a471095f2", "graph_gold_label": "assumption_check", "changed_file_labels": {}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: assumption_check\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#2\nEvidence:\nGraph motif: Schema, UI, and API evidence do not line up\nMotif id: schema_ui_api_mismatch\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#2\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: scott0229/scott-agent#2\nRepo: scott0229/scott-agent\nIssue/PR number: 2\nGraph consistency label: assumption_check\nNodes: 21\nEdges: 28\nNode types: {'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: {'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: {'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'human_feedback_general': 1, 'human_reported_issue_no_linked_fix': 1, 'unlinked_human_feedback': 1, 'ambiguous_needs_more_evidence': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 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- Create schema-to-API-to-UI consistency tasks with migrations and tests.\n- Teach models to verify persistence, route contracts, and UI state together.\nAssumption checks:\n- Do schema changes have matching API and UI handling?\n- Are migrations and tests present for the data path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "graph-query-motif_query-8e07f77e43c8f874", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/schema_ui_api_mismatch/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "graph_queries/schema_ui_api_mismatch", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391049, "scanner": "foundry_dataset", "fingerprint": "813e28fb5a524c3de325559a799ae8401da51a0aa4df554a43f82062e8d60d98", "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": "scott0229/scott-agent#5", "human_labels": ["deployment_env_gap"], "issue_number": "5", "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": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-ddd24b0434d9a151", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#5\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#5\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'deployment_env_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-b55a9639b7461d8d\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/5\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/5\\nTitle: chore: add blog draft + seed scripts\\nBody:\\n## Summary\\nAdds the working artifacts behind the first blog post:\\n\\n- `blog-drafts/put-strike-adjustment.html` \u2014 standalone HTML preview of the post (visual reference for what was authored into the DB)\\n- `scripts/insert-blog-put-strike.mjs` + `update-blog-put-strike.mjs` \u2014 one-off helpers that build an inline-styled HTML payload and run it through `wrangler d1 execute` against both production DBs (advisor + scott)\\n- `.gitignore` \u2014 skip Claude Code's local `.claude/` state and the runtime tmp SQL the seed scripts emit\\n\\nNo app code changes; merging will still trigger a no-op deploy run (rebuilds the same Worker).\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-af4036a952f75b07\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"artifact_supports_verification\": 10, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 11, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"ci\": 1, \"docs\": 1, \"schemas\": 8, \"tests\": 1}\nHelicopter views: {\"graphs\": 2, \"schemas\": 2}\nBundle labels: {\"source_backed_architecture_schema_bundle\": 1}\nCo-occurrence labels: {\"architecture_data_consistency_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-ef50a6c66529d458", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391048, "scanner": "foundry_dataset", "fingerprint": "955449ef068a6b7b6bca7b858142ceef90681ff917dc8ae5304a0fa00cc36af7", "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": "scott0229/scott-agent#4", "human_labels": ["runtime_failure"], "issue_number": "4", "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": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-ef9dfbb5f930fc76", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#4\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#4\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'runtime_failure': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-0989d718d424ce15\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"runtime_failure\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/4\",\n    \"text\": \"GitHub feedback: runtime_failure\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/4\\nTitle: docs + fix: deploy docs and blog HTML rendering\\nBody:\\n## Summary\\nTwo changes bundled:\\n\\n### 1. Docs: CI deploy + Cloudflare API token permissions\\nCaptures the deployment setup so it doesn't have to be re-discovered:\\n- CI (`.github/workflows/deploy-{staging,production}.yml`) is the **primary** deploy path\\n- Local `npm run deploy:*` on Windows is broken (OpenNext + paths with spaces)\\n- Required GitHub repo secrets table\\n- Cloudflare API token permission matrix, calling out the easy-to-miss **Zone \u00b7 Workers Routes \u00b7 Edit**\\n\\n### 2. Fix: render blog post content as raw HTML\\nArticles are authored as standalone HTML (inline styles, SVG). The previous `<Markdown>` component layered `@uiw/react-markdown-preview`'s GitHub-flavored CSS on top, which made the rendered output drift from the source.\\n- Switch `src/app/blog/[id]/page.tsx` to `dangerouslySetInnerHTML`\\n- Drop markdown CSS imports + the dynamic Markdown import in the reader\\n- Add `.blog-content` rule set in `globals.css` for basic typography\\n\\nBlog is adm\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-44ac62b38b24b531\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"artifact_supports_verification\": 10, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 11, \"repo_has_source_bundle\": 1, \"source_bu\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-8cfe7471f4b11e4a", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391047, "scanner": "foundry_dataset", "fingerprint": "868f926946e07caffbeca9643611e99af59660cd70cf594c9eadf59ab2058ada", "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": "scott0229/scott-agent#3", "human_labels": ["test_ci_gap"], "issue_number": "3", "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": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-ac7f797ef588510f", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#3\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#3\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-4a19d72bd2f6e2eb\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/3\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/3\\nTitle: ci: add production deploy workflow\\nBody:\\n## Summary\\nAdds `.github/workflows/deploy-production.yml` mirroring the staging workflow but targeting the production env. Triggers on push to main and via manual workflow_dispatch.\\n\\nValidated by the now-working staging workflow run https://github.com/scott0229/scott-agent/actions/runs/25963591123 \u2014 same secrets / same token / proven to deploy successfully.\\n\\nOnce merged: push to main will deploy both staging and production in parallel.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-6674d720649c43ff\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"artifact_supports_verification\": 10, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 11, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"ci\": 1, \"docs\": 1, \"schemas\": 8, \"tests\": 1}\nHelicopter views: {\"graphs\": 2, \"schemas\": 2}\nBundle labels: {\"source_backed_architecture_schema_bundle\": 1}\nCo-occurrence labels: {\"architecture_data_consistency_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-3f502102e96415c9", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391046, "scanner": "foundry_dataset", "fingerprint": "2cb4b13e5184c6689bdf1bf5f75f50b03a1ecc79a8c6edc223e9cda09568b9f5", "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": "scott0229/scott-agent#25", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "25", "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": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-763ddaa87a83c359", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 1}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#25\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#25\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 1\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-4a692b565375401a\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/25\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/25\\nTitle: style(blog): bump category tint contrast for dark mode\\nBody:\\n## Summary\\nPrevious `/30` opacity on the 950-shade was too dark to be readable on a near-black dark-mode background \u2014 the three tints all looked close to black. Switch to:\\n\\n- Background: `bg-{color}-900/40` (lighter base color)\\n- Border: `border-{color}-700/70` (more visible)\\n- Hover border: `border-{color}-500` (clear hover feedback)\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-709665764f61acc2\",\n    \"filename\": \"src/app/blog/page.tsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 3,\n    \"changes\": 6,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/f5bb5f53e3b10c5794c7eac0c5516d6bebf53e56/src%2Fapp%2Fblog%2Fpage.tsx\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-5ee0743ac3878dce\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"artifact_supports_verification\": 10, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 11, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"ci\": 1, \"docs\": 1, \"schemas\": 8, \"tests\": 1}\nHelicopter views: {\"graphs\": 2, \"schemas\": 2}\nBundle labels: {\"source_backed_architecture_schema_bundle\":\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-e9c11d6c87faac67", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391045, "scanner": "foundry_dataset", "fingerprint": "3c000834fd361234a7781cb5804c73f8a45883cbb46a999c8acb6d32d0f0d2dc", "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": "scott0229/scott-agent#24", "human_labels": ["source_or_other", "ui_or_frontend", "ui_workflow_gap"], "issue_number": "24", "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": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-2fda1d82febf514e", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 1, "source_or_other": 1}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#24\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#24\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'ui_workflow_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 1, 'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-5892cbeb7077ff7a\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"ui_workflow_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/24\",\n    \"text\": \"GitHub feedback: ui_workflow_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/24\\nTitle: style(blog): tint cards by category\\nBody:\\n## Summary\\nVisual change to make the three content types on the blog list distinguishable at a glance. Each category gets a subtle dark-mode background + border tint:\\n\\n| Category | Color |\\n|---|---|\\n| \u6848\u4f8b | emerald (analysis / learning) |\\n| \u5f71\u7247 | indigo (multimedia) |\\n| \u6587\u6a94 | amber (document / PDF) |\\n\\nCategories outside this set keep the default `bg-card` surface.\\n\\n## Test plan\\n- [ ] Refresh https://scott-agent.com/blog and confirm the three card types have distinct tints.\\n- [ ] Hover state should still feel responsive (border-color shifts on hover within the same hue).\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-823e5b94fe2e9744\",\n    \"filename\": \"scripts/insert-blog-seller-loss-lessons.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 30,\n    \"deletions\": 0,\n    \"changes\": 30,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/8e11f62f715e02e1c7fadbf2fd790be9a20813a5/scripts%2Finsert-blog-seller-loss-lessons.mjs\"\n  },\n  {\n    \"id\": \"github-pr-file-file-cc1396ad70bec0f9\",\n    \"filename\": \"src/app/blog/page.tsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 44,\n    \"deletions\": 24,\n    \"changes\": 68,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/8e11f62f715e02e1c7fadbf2fd790be9a20813a5/src%2Fapp%2Fblog%2Fpage.tsx\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-ed3982aeb933fdd5\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-940f2487efedee16", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391044, "scanner": "foundry_dataset", "fingerprint": "bf61b83a9bd99575be1583e353853cbd6e78f15277c12a1128d121e00c170dcd", "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": "scott0229/scott-agent#23", "human_labels": ["agent_instruction_gap", "source_or_other"], "issue_number": "23", "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": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-0d37726cd9674af8", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 1}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#23\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#23\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 1\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-87a63e914e4b7046\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/23\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/23\\nTitle: content(blog): add video post \u2014 \u671f\u6b0a\u8667\u640d\u7d93\u9a57\u5206\u4eab\\nBody:\\n## Summary\\nThird video post in this batch. Video already live (R2 + D1) \u2014 script archived for traceability.\\n\\n- **Title**: \u5f71\u7247\uff1a\u671f\u6b0a\u8667\u640d\u7d93\u9a57\u5206\u4eab\\n- **Video**: `blog-videos/seller-loss-lessons.mp4` (~52 MB) in R2\\n- **Tags**: \u98a8\u96aa\u7ba1\u7406 / \u7d93\u9a57 / \u5f71\u7247\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-845ca27808469511\",\n    \"filename\": \"scripts/insert-blog-seller-loss-lessons.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 30,\n    \"deletions\": 0,\n    \"changes\": 30,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/a1c4a7916a7a02c37c74bf0818eff02c683c5fd3/scripts%2Finsert-blog-seller-loss-lessons.mjs\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-7afa2a9268a7fdad\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"artifact_supports_verification\": 10, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 11, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"ci\": 1, \"docs\": 1, \"schemas\": 8, \"tests\": 1}\nHelicopter views: {\"graphs\": 2, \"schemas\": 2}\nBundle labels: {\"source_backed_architecture_schema_bundle\": 1}\nCo-occurrence labels: {\"architecture_data_consistency_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-79eec7319a1284d6", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391043, "scanner": "foundry_dataset", "fingerprint": "fe3b897bf8a2f48b4c1483d3e96661ab9e68c8878bc29578f457fbfe6ef832c2", "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": "scott0229/scott-agent#22", "human_labels": ["agent_instruction_gap", "source_or_other"], "issue_number": "22", "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": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-19a423cec4bd8c4c", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 1}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#22\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#22\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 1\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-2d43a0a66ca5c1a4\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/22\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/22\\nTitle: content(blog): add video post \u2014 \u8ce3\u65b9\u5982\u4f55\u907f\u514d\u5927\u8667\uff0c\u52dd\u7387 95%\\nBody:\\n## Summary\\nInsert script for the second video post in this batch. Video already live (R2 + D1) \u2014 script archived here for traceability.\\n\\n- **Title**: \u5f71\u7247\uff1a\u8ce3\u65b9\u5982\u4f55\u907f\u514d\u5927\u8667\uff0c\u52dd\u7387 95%\\n- **Video**: `blog-videos/seller-avoid-loss.mp4` (~38 MB) in R2\\n- **Tags**: \u8ce3\u65b9 / \u98a8\u96aa\u7ba1\u7406 / \u5f71\u7247\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-622c3385662912e4\",\n    \"filename\": \"scripts/insert-blog-seller-avoid-loss.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 30,\n    \"deletions\": 0,\n    \"changes\": 30,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/9559fe9c952d46f0cd7dc0d4787d3f883e58ef1a/scripts%2Finsert-blog-seller-avoid-loss.mjs\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-468052badee43545\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"artifact_supports_verification\": 10, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 11, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"ci\": 1, \"docs\": 1, \"schemas\": 8, \"tests\": 1}\nHelicopter views: {\"graphs\": 2, \"schemas\": 2}\nBundle labels: {\"source_backed_architecture_schema_bundle\": 1}\nCo-occurrence labels: {\"architecture_data_consistency_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-f29f3e4080a0c53e", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391042, "scanner": "foundry_dataset", "fingerprint": "dc8abd29f48753509c694bb84a5b7c140be54515674acd8264282ca22adfdc7a", "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": "scott0229/scott-agent#21", "human_labels": ["deployment_env_gap", "source_or_other"], "issue_number": "21", "thread_label": "thread_has_human_issue_without_fix_context", "outcome_label": "not_resolved_or_not_observed", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-ed291b6284671b28", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 1}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#21\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#21\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 1\nLabels: {'deployment_env_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-cb6ea765d2633988\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/21\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/21\\nTitle: content(blog): add video post \u2014 \u4e00\u6b21\u641e\u61c2\u671f\u6b0a\\nBody:\\n## Summary\\nInsert script for the new video blog post. Video file uploaded to R2 (both production + staging buckets) and post inserted into both D1 databases \u2014 script archived here for traceability.\\n\\n- **Title**: \u5f71\u7247\uff1a\u4e00\u6b21\u641e\u61c2\u671f\u6b0a\\n- **Video**: `blog-videos/option-basics.mp4` (~98 MB) in R2\\n- **Post id**: 9 (production), 6 (scott-production)\\n- **Category** / **tags**: \u5f71\u7247 / \u9078\u64c7\u6b0a\u77e5\u8b58 \u00b7 \u5f71\u7247\\n\\n## Test plan\\n- [ ] Refresh https://scott-agent.com/blog and confirm new video post appears at top.\\n- [ ] Open the post and confirm the video plays.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-25b649f155c9b907\",\n    \"filename\": \"scripts/insert-blog-options-101.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 30,\n    \"deletions\": 0,\n    \"changes\": 30,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/a616ed67d487a48039eb382e03273743d557860b/scripts%2Finsert-blog-options-101.mjs\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-f07213ad54564209\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"artifact_supports_verification\": 10, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 11, \"repo_has_source_bun\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-dcf20ee88cdede20", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391041, "scanner": "foundry_dataset", "fingerprint": "f61d26d627eef09d210665e5ca5d125d59fcc817d774739ead39d507dcb9a9a2", "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": "scott0229/scott-agent#20", "human_labels": ["agent_instruction_gap", "source_or_other"], "issue_number": "20", "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": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-680a88727ec805dd", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 6, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 6}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#20\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#20\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 6\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 6}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-3f2d9685c251c25c\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/20\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/20\\nTitle: chore(blog): content tweaks (paragraph merges + trade-card boxes)\\nBody:\\n## Summary\\nContent-only iteration scripts from this round. No code changes.\\n\\n- **Blog #1 (\u6848\u4f8b 1)**: keep-strike bullet rewording (added \u300c2.4%\u300d buffer figure), merged two paragraphs about \u300c\u53cd\u61c9\u904e\u5ea6\u300d + \u300c\u62c9\u7684\u5e45\u5ea6\u300d into one, merged \u300c\u771f\u7684\u64d4\u5fc3\uff0c\u5c11\u91cf\u5730\u5f80\u4e0b\u8abf...\u300d paragraph into the preceding callout, title v4 (\u300c\u80a1\u50f9\u8dcc\u4e0d\u5c11\uff0cSELL PUT \u5982\u679c\u6c92\u88ab\u884c\u6b0a\u98a8\u96aa...\u300d).\\n- **Blog #5 (\u6848\u4f8b 4)**: title v2 (\u300c\u4e00\u5929\u5167\u505a\u5169\u6b21\u884c\u6b0a\u50f9\u6efe\u52d5\uff0c\u554f\u984c\u51fa\u5728\u54ea\uff1f\u300d), replaced the 5-row trade table with two trade-card boxes matching \u6848\u4f8b 3's visual style (green chip for Roll #1 credit, orange chip for Roll #2 debit).\\n\\n## Test plan\\n- [ ] Refresh https://scott-agent.com/blog/1 and confirm the paragraph merges + 2.4% bullet text.\\n- [ ] Refresh https://scott-agent.com/blog/5 and confirm two trade boxes render correctly (replacing the old table).\\n- [ ] Confirm titles on the blog list match the new wording.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-08834752507d2496\",\n    \"filename\": \"scripts/update-blog-1-keep-strike.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 30,\n    \"deletions\": 0,\n    \"changes\": 30,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/fd5ca5f2492a1e893247d60cfee54843413b8c26/scripts%2Fupdate-blog-1-keep-strike.mjs\"\n  },\n  {\n    \"id\": \"github-pr-file-file-c4cda3d72bcf17c1\",\n    \"filename\": \"scripts/update-blog-1-merge-fear-para.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 30,\n    \"deletions\": 0,\n    \"changes\": 30,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/fd5ca5f2492a1e893247d60cfee54843413b8c26/scripts%2Fupdate-blog-1-merge-fear-para.mj\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-b095967699811ca8", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391040, "scanner": "foundry_dataset", "fingerprint": "498174dc035a670f3538754c0739b9f9b615d3e2be5173bb952510050daaad1e", "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": "scott0229/scott-agent#2", "human_labels": ["data_schema_persistence", "human_feedback_general"], "issue_number": "2", "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": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-2c99d3c28146bbb9", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#2\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#2\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 2\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'data_schema_persistence': 1, 'human_feedback_general': 1}\nPolarities: {'bad': 1, 'neutral': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-72e6e2ca6244240a\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"data_schema_persistence\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/2\",\n    \"text\": \"GitHub feedback: data_schema_persistence\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/2\\nTitle: feat: add \u90e8\u843d\u683c tab for AI-generated options articles\\nBody:\\n## Summary\\r\\n- Adds a new \u90e8\u843d\u683c tab in the navbar (admin/manager only), placed to the left of \u6a94\u6848\u5eab\\r\\n- Full CRUD with Markdown editor (`@uiw/react-md-editor`)\\r\\n- Fields: \u6a19\u984c\u3001Markdown \u5167\u5bb9\u3001\u767c\u5e03\u65e5\u671f\u3001\u5206\u985e\u3001\u6a19\u7c64\\r\\n- New `blog_posts` table (migration `0084`), `DB` / `DB_SCOTT` aware\"\n  },\n  {\n    \"id\": \"github-feedback-comment-ef8b52396cac7b36\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/2#issuecomment-4466932556\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: issue_comment\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/2#issuecomment-4466932556\\nTitle: \\nBody:\\ng\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-3c1b198a061bf323\", \"evidence-chain-comment_to_commit-d6efd6ca26dc9076\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"artifact_supports_verification\": 10, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 11, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"ci\": 1, \"docs\": 1, \"schemas\": 8, \"tests\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-2ba0039a1da679c9", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391039, "scanner": "foundry_dataset", "fingerprint": "f261b77a956e00afd5675e667394f42b5e1a933e501b02abe07fd4efc5e6d103", "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": "scott0229/scott-agent#18", "human_labels": ["agent_instruction_gap", "source_or_other"], "issue_number": "18", "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": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-bd9fccde0866d97f", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 28, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 28}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#18\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#18\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 28\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 28}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-8572240168c0e79b\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/18\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/18\\nTitle: chore(blog/4): archive iteration scripts (summary rewrite, plain-zh, less bold)\\nBody:\\n## Summary\\n- Archives 28 one-off update scripts from this round of blog #4 iteration.\\n- Major content changes captured: \u7e3d\u7d50 callout rewritten around the premise \u300c\u6b63\u80a1\u6709\u6536\u76ca\u4e14\u88ab call \u8d70\u4e5f\u6c92\u95dc\u4fc2\u300d\uff08\u8b93\u88ab\u6307\u6d3e\u6210\u70ba\u9810\u8a2d\u3001\u5c55\u671f\u8b8a\u6210\u4f8b\u5916\uff09.\\n- Translated remaining English jargon to plain Chinese (\u6a5f\u6703\u6210\u672c, \u62bd\u8c61, \u884c\u6b0a\u50f9\u7de9\u885d, etc.) and spelled out the short-DTE/theta/IV mechanism in concrete terms.\\n- Cut `<strong>` highlight density from 37 \u2192 16 tags (kept only bullet labels and section headers).\\n- Various small phrasing tweaks (e.g. May22 \u2192 May'22, \u300c\u4e0d\u8a72\u9632\u5b88\u300d\u2192\u300c\u6c92\u6709\u9632\u5b88\u7684\u5f37\u70c8\u5fc5\u8981\u300d).\\n\\n## Test plan\\n- [ ] Refresh https://scott-agent.com/blog/4 and confirm the latest content matches.\\n- [ ] Spot-check the \u7e3d\u7d50 callout reads as ordered list (1/2/3) with the new premise.\\n- [ ] Confirm bold density looks balanced \u2014 no walls of bold mid-paragraph.\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude.com/claude-code)\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-b0dd941b7c87ed39\",\n    \"filename\": \"scripts/update-blog-4-called-away-phrase.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 30,\n    \"deletions\": 0,\n    \"changes\": 30,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/a31d2499b34a9fee278906f685c3f798c496c142/scripts%2Fupdate-blog-4-called-away-phrase.mjs\"\n  },\n  {\n    \"id\": \"github-pr-file-file-87d3e55d8cb5ca04\",\n    \"filename\": \"scripts/update-blog-4-cost-account.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 30,\n    \"deletions\": 0,\n    \"changes\": 30,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/a31d2499b34a9fee278906f685c3f798c496c142/scripts%2Fupdate-blog-4-cost-account.mjs\"\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-44c49b55dc43624a", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391038, "scanner": "foundry_dataset", "fingerprint": "5b0539b1c533018ba0bce6cb61c719ccc536b1b1a88b1b43407c91d08484d7a6", "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": "scott0229/scott-agent#16", "human_labels": ["runtime_failure", "source_or_other"], "issue_number": "16", "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": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-691ad63059cce246", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 2}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#16\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#16\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'runtime_failure': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-7fb75a22117d57a2\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"runtime_failure\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/16\",\n    \"text\": \"GitHub feedback: runtime_failure\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/16\\nTitle: chore: track .claude/settings.json (allowlist) in git\\nBody:\\n## Summary\\nTrack the project-level Claude Code allowlist in git so it syncs with the repo.\\n\\n- `.gitignore`: change `/.claude/` to `/.claude/*` with a `!/.claude/settings.json` exception. Everything else under `.claude/` (worktrees, credentials, sessions) stays ignored.\\n- `.claude/settings.json`: currently allows `Bash(node scripts/update-blog-*)` and `Bash(node scripts/insert-blog-*)` so the blog seed scripts don't prompt on every run.\\n\\nNo app code changes. CI will run a no-op deploy.\\n\\nGenerated with [Claude Code](https://claude.com/claude-code)\\n\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-70ef11cda76c9622\",\n    \"filename\": \".claude/settings.json\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 8,\n    \"deletions\": 0,\n    \"changes\": 8,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/9890325211e3dac6c057c7f35fba59229aecc69f/.claude%2Fsettings.json\"\n  },\n  {\n    \"id\": \"github-pr-file-file-9d8219bbece068eb\",\n    \"filename\": \".gitignore\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 2,\n    \"changes\": 5,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/9890325211e3dac6c057c7f35fba59229aecc69f/.gitignore\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-7d2b73b82661953a\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_ver\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-6d216e37f113e220", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391037, "scanner": "foundry_dataset", "fingerprint": "11d8f2a5d6e4c67d884e989e614625ae5d0851c227b3aac2554d870d1c454308", "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": "scott0229/scott-agent#13", "human_labels": ["deployment_env_gap", "source_or_other"], "issue_number": "13", "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": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-3307883d308e080d", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 2}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#13\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#13\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'deployment_env_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-2a665f489736fe3c\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/13\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/13\\nTitle: content(blog/1): tighten chart caption, fix dark-mode readability in \u2026\\nBody:\\n\u2026rebuttal callouts\\r\\n\\r\\n- Shorten the QQQ chart figcaption to a single line, dropping redundant trend commentary the chart already conveys.\\r\\n- Add explicit color:#3a3025 to the two \\\"\u5e38\u898b\u53cd\u99c1\\\" wrapper divs. The cream background forced light page text to render on a light surface in dark mode, leaving the body paragraphs, list items, and table cells nearly invisible. The override cascades to children that didn't set their own color, while red-emphasis cells and the italic intro quote keep their explicit colors.\\r\\n\\r\\nProduction D1 (both DBs) already updated via update-blog-put-strike.mjs.\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-7cc151c827a6abd7\",\n    \"filename\": \"blog-drafts/put-strike-adjustment.html\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 3,\n    \"changes\": 6,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/a55dcee370491f5886ebb0b036565101771991b9/blog-drafts%2Fput-strike-adjustment.html\"\n  },\n  {\n    \"id\": \"github-pr-file-file-6b838d7f1393349a\",\n    \"filename\": \"scripts/update-blog-put-strike.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 3,\n    \"changes\": 6,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/a55dcee370491f5886ebb0b036565101771991b9/scripts%2Fupdate-blog-put-strike.mjs\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-2796f63435306d02\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\":\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-4ff5b9e6302b086a", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391036, "scanner": "foundry_dataset", "fingerprint": "36ebff85a4b944100de3617d66636c6ebd86ffc054837adba404feb7fd1ff050", "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": "scott0229/scott-agent#12", "human_labels": ["source_or_other", "test_ci_gap"], "issue_number": "12", "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": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-02c4379f8eba3f49", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 2}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#12\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#12\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-550cbbc7482171cd\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/12\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/12\\nTitle: chore(blog): seed scripts for video blog post #2\\nBody:\\n## Summary\\nAdds the one-off seed scripts that created and updated blog post #2 (video embed using the new R2-backed `/api/blog-video` route).\\n\\n- `scripts/insert-blog-iv-video.mjs` - original insert (IV explainer video)\\n- `scripts/update-blog-iv-video.mjs` - retitle + swap to `\u5f71\u7247\uff1a\u671f\u6b0a\u8ce3\u65b9\u80fd\u9577\u671f\u7372\u5229\u7684\u6839\u672c\u539f\u56e0`, pointing at R2 key `blog-videos/seller-edge.mp4`\\n\\nNo app code changes. Production DB and R2 already reflect the latest state. CI will run a no-op deploy.\\n\\nGenerated with [Claude Code](https://claude.com/claude-code)\\n\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-2682cd893df8bb6b\",\n    \"filename\": \"scripts/insert-blog-iv-video.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 40,\n    \"deletions\": 0,\n    \"changes\": 40,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/73e46321a39540a9769cf4d2be648d6a0d570588/scripts%2Finsert-blog-iv-video.mjs\"\n  },\n  {\n    \"id\": \"github-pr-file-file-8d5fc5977615dac0\",\n    \"filename\": \"scripts/update-blog-iv-video.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 47,\n    \"deletions\": 0,\n    \"changes\": 47,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/73e46321a39540a9769cf4d2be648d6a0d570588/scripts%2Fupdate-blog-iv-video.mjs\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-f7ce9bd928f6a110\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_ne\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-b0665772321a5227", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391035, "scanner": "foundry_dataset", "fingerprint": "3579e63a2b6e319116a012e64f6fb1063657d7f7f7320d1827c921a802d65a4e", "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": "scott0229/scott-agent#11", "human_labels": ["api_integration_gap", "api_or_backend"], "issue_number": "11", "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": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-cf4153d34e622511", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"api_or_backend": 1}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#11\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#11\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 1\nLabels: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'api_or_backend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-f6637f4d9abe2310\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/11\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/11\\nTitle: feat(blog): R2-backed video streaming route\\nBody:\\n## Summary\\nAdd a streaming route so blog posts can embed videos hosted in R2 without going through YouTube or making the bucket publicly accessible.\\n\\n- `GET /api/blog-video/[...key]` \u2014 streams a binary object out of the production R2 bucket\\n- Admin/manager only (same gate as the rest of `/blog`)\\n- Honours HTTP Range requests so the `<video>` player can seek without re-downloading the full file\\n- Used by upcoming blog posts that embed video content (first one: the IV explainer)\\n\\nThe file itself was already uploaded to R2 via wrangler under key `blog-videos/iv-explanation.mp4`.\\n\\nGenerated with [Claude Code](https://claude.com/claude-code)\\n\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-6fc6c72cccf9891f\",\n    \"filename\": \"src/app/api/blog-video/[...key]/route.ts\",\n    \"label\": \"api_or_backend\",\n    \"status\": \"added\",\n    \"additions\": 81,\n    \"deletions\": 0,\n    \"changes\": 81,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/fa55d1421a300998779e23d06c1fdba44737d3cd/src%2Fapp%2Fapi%2Fblog-video%2F%5B...key%5D%2Froute.ts\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-b1e033a8d910b516\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"artifact_supports_verification\": 10, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_ha\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-f6bbbc3938800881", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391034, "scanner": "foundry_dataset", "fingerprint": "59b270540e6a1ebd278d678cb2498c8434b77e1e7377f2ab5c03f55711e148e4", "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": "scott0229/scott-agent#10", "human_labels": ["deployment_env_gap", "source_or_other"], "issue_number": "10", "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": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-20418e484103b98c", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 2}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#10\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#10\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'deployment_env_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-fa96a4c199bf0e20\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"deployment_env_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/10\",\n    \"text\": \"GitHub feedback: deployment_env_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/10\\nTitle: content(blog/1): drop conflicting (\u6700\u4f73) tag from principle bullet\\nBody:\\n## Summary\\nThe green `\u6700\u4f73\u5224\u65b7` callout already declares `\u7dad\u6301\u884c\u6b0a\u50f9\u4e0d\u52d5` as the best choice for this case, so tagging another principle bullet as `(\u6700\u4f73)` created a contradiction. Reserve the word for one place.\\n\\nProduction DB already updated; this keeps draft + seed script in sync.\\n\\nGenerated with [Claude Code](https://claude.com/claude-code)\\n\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-ceee4c05677c29ea\",\n    \"filename\": \"blog-drafts/put-strike-adjustment.html\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 1,\n    \"deletions\": 1,\n    \"changes\": 2,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/6ab0d3530d175311ad0ef6c0689f9f401f0f6b64/blog-drafts%2Fput-strike-adjustment.html\"\n  },\n  {\n    \"id\": \"github-pr-file-file-c9a760abf963b971\",\n    \"filename\": \"scripts/update-blog-put-strike.mjs\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 1,\n    \"deletions\": 1,\n    \"changes\": 2,\n    \"blob_url\": \"https://github.com/scott0229/scott-agent/blob/6ab0d3530d175311ad0ef6c0689f9f401f0f6b64/scripts%2Fupdate-blog-put-strike.mjs\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-32354a49b51d2105\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"artifact_supports_verification\": 10, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-b5ce4480b344b65e", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: scott0229/scott-agent"}, "properties": {"repobilityId": 391033, "scanner": "foundry_dataset", "fingerprint": "35dbf22540c2b2d008d2f3af5c7db555af960fbacfc0c8cccc21c858a3efdae4", "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": "scott0229/scott-agent#1", "human_labels": ["agent_instruction_gap"], "issue_number": "1", "thread_label": "thread_has_human_issue_without_fix_context", "outcome_label": "not_resolved_or_not_observed", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "scott0229/scott-agent", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-a2091e5376273bad", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 1, "docs": 1, "tests": 1, "schemas": 8}, "source_chain_kind": "issue_chain", "changed_file_count": 0, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {}, "linked_commit_count": 0, "helicopter_view_count": 4, "source_artifact_count": 11, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 10, "design_schema_api_artifact_count": 8}, "text": "Comment chain pattern product: bad_chains\nRepo: scott0229/scott-agent\nThread: scott0229/scott-agent#1\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: scott0229/scott-agent#1\nRepo: scott0229/scott-agent\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 0\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-6319794e17d949e6\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/scott0229/scott-agent/pull/1\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: scott0229/scott-agent\\nAuthor: scott0229 (User)\\nURL: https://github.com/scott0229/scott-agent/pull/1\\nTitle: Claude/objective northcutt afadfc\\nBody:\\n\"\n  }\n]\nChanged files:\n[]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-95518fa8fbad2cc6\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: scott0229/scott-agent\nGraph label: source_backed_multi_signal_graph\nNodes: 19\nEdges: 30\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 11, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"artifact_supports_verification\": 10, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 11, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"ci\": 1, \"docs\": 1, \"schemas\": 8, \"tests\": 1}\nHelicopter views: {\"graphs\": 2, \"schemas\": 2}\nBundle labels: {\"source_backed_architecture_schema_bundle\": 1}\nCo-occurrence labels: {\"architecture_data_consistency_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/scott0229/scott-agent", "source_id": "comment-chain-pattern-bad_chains-7f5271617cc5992e", "synthetic": false, "gold_label": "", "graph_label": "source_backed_multi_signal_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "scott0229/scott-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "scanner-bead75b0f9233e05", "level": "none", "message": {"text": "No API endpoints detected"}, "properties": {"repobilityId": "0f8bb852027c38f8", "scanner": "scanner-primary", "fingerprint": "bead75b0f9233e05", "layer": "api", "severity": "info", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-fbbe2b0480b1e88a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 debug_parser.ts:50"}, "properties": {"repobilityId": "74f1cca333e6bad5", "scanner": "scanner-primary", "fingerprint": "fbbe2b0480b1e88a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-76d69b007bcb96a8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 check_feb11_records.ts:13"}, "properties": {"repobilityId": "9dfb6b28af3f3059", "scanner": "scanner-primary", "fingerprint": "76d69b007bcb96a8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1ed9f9291171a765", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 refactor_trade_groups.js:50"}, "properties": {"repobilityId": "601f6a4282acbd42", "scanner": "scanner-primary", "fingerprint": "1ed9f9291171a765", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-24b8a8ccc1a6d0cb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 check_price.ts:18"}, "properties": {"repobilityId": "eae0a061e378bf9e", "scanner": "scanner-primary", "fingerprint": "24b8a8ccc1a6d0cb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b1f4c5f08e6a8684", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 hash-admin.js:6"}, "properties": {"repobilityId": "b10872207cf3d7b6", "scanner": "scanner-primary", "fingerprint": "b1f4c5f08e6a8684", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-fd8e8fd162d8adfe", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 test-full-output.js:55"}, "properties": {"repobilityId": "81bed2d22912914a", "scanner": "scanner-primary", "fingerprint": "fd8e8fd162d8adfe", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f7b0692ec9c2fef8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 fix_admin_pwd.js:7"}, "properties": {"repobilityId": "d97ea5691cb121df", "scanner": "scanner-primary", "fingerprint": "f7b0692ec9c2fef8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e87378e0f91086fa", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 hash-password.js:6"}, "properties": {"repobilityId": "ece7adf9999b9469", "scanner": "scanner-primary", "fingerprint": "e87378e0f91086fa", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-74559dc6fd3c1ef5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 test-delete-api.js:11"}, "properties": {"repobilityId": "3b62c7b831cb0017", "scanner": "scanner-primary", "fingerprint": "74559dc6fd3c1ef5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7a0c7095b0d7a9e2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 debug_december.js:27"}, "properties": {"repobilityId": "3fcc83525c329d17", "scanner": "scanner-primary", "fingerprint": "7a0c7095b0d7a9e2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a04e8f11d0afd2e5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 refactor.js:46"}, "properties": {"repobilityId": "c0e3143b86ddd483", "scanner": "scanner-primary", "fingerprint": "a04e8f11d0afd2e5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d9ca9ee105583c81", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 check-db.ts:6"}, "properties": {"repobilityId": "02853320e1f55936", "scanner": "scanner-primary", "fingerprint": "d9ca9ee105583c81", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2e8a91b8a5afce09", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 debug_db.ts:12"}, "properties": {"repobilityId": "881d7ce34b8d5720", "scanner": "scanner-primary", "fingerprint": "2e8a91b8a5afce09", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-54529dace0ee929c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 test-alpha-vantage.js:20"}, "properties": {"repobilityId": "595319d6127a438b", "scanner": "scanner-primary", "fingerprint": "54529dace0ee929c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7932ce65f69a187a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 temp_add_btn.js:23"}, "properties": {"repobilityId": "0df5ffc3fa407763", "scanner": "scanner-primary", "fingerprint": "7932ce65f69a187a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-41f26999e21e1f7c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 check_price.js:14"}, "properties": {"repobilityId": "b0b395cc6d42f9b7", "scanner": "scanner-primary", "fingerprint": "41f26999e21e1f7c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-46354906b7af8ea6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-frozen.js:8"}, "properties": {"repobilityId": "59c08aba2568a2c3", "scanner": "scanner-primary", "fingerprint": "46354906b7af8ea6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-788253d4fed83e66", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-ib-rate.js:31"}, "properties": {"repobilityId": "ee158d36a3f4760b", "scanner": "scanner-primary", "fingerprint": "788253d4fed83e66", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f551d487f2be6ca4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-ib-rate2.js:28"}, "properties": {"repobilityId": "3bb39bf18a944301", "scanner": "scanner-primary", "fingerprint": "f551d487f2be6ca4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-301da6110887e7e2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-option-focused.js:9"}, "properties": {"repobilityId": "30e915a68a9e66d6", "scanner": "scanner-primary", "fingerprint": "301da6110887e7e2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-73f3406d2e6125b2", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-electron.js:3"}, "properties": {"repobilityId": "4324d9313aa96bd8", "scanner": "scanner-primary", "fingerprint": "73f3406d2e6125b2", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a5174a573415b1e3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-option-data.js:19"}, "properties": {"repobilityId": "a596bb67f117450c", "scanner": "scanner-primary", "fingerprint": "a5174a573415b1e3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c9ba5cef3978100f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/test-option-sim.js:12"}, "properties": {"repobilityId": "98f2682f501db47c", "scanner": "scanner-primary", "fingerprint": "c9ba5cef3978100f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0c9c9706e766dcd7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/tmp-test-api.js:4"}, "properties": {"repobilityId": "9a2fb851e46f9794", "scanner": "scanner-primary", "fingerprint": "0c9c9706e766dcd7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ab421d8c175c0905", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/SettingsPanel.tsx:264"}, "properties": {"repobilityId": "785cd5c34e36b532", "scanner": "scanner-primary", "fingerprint": "ab421d8c175c0905", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-691c74f6fdc7b03d", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/TransferStockDialog.tsx:416"}, "properties": {"repobilityId": "c469b0b3c4c8f357", "scanner": "scanner-primary", "fingerprint": "691c74f6fdc7b03d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-9882eab094c62b41", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/renderer/src/components/OptionOrderForm.tsx:116"}, "properties": {"repobilityId": "ee15b6db3c29699f", "scanner": "scanner-primary", "fingerprint": "9882eab094c62b41", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-95508d4c195daf59", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/AiAdvisorDialog.tsx:214"}, "properties": {"repobilityId": "f312968e6ec0e946", "scanner": "scanner-primary", "fingerprint": "95508d4c195daf59", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-c57c29314781f633", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/CloseOptionDialog.tsx:289"}, "properties": {"repobilityId": "feaaa82d48c04712", "scanner": "scanner-primary", "fingerprint": "c57c29314781f633", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-e7945c9825c0bd43", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/ClosePositionDialog.tsx:199"}, "properties": {"repobilityId": "1b27c775562ed837", "scanner": "scanner-primary", "fingerprint": "e7945c9825c0bd43", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-a87ff91b041f0b81", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/TradeGroupDialog.tsx:212"}, "properties": {"repobilityId": "2b036a75c4e11f95", "scanner": "scanner-primary", "fingerprint": "a87ff91b041f0b81", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-5bfece8c54f57a0d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/renderer/src/components/AccountOverview.tsx:788"}, "properties": {"repobilityId": "c9c67257e1de56aa", "scanner": "scanner-primary", "fingerprint": "5bfece8c54f57a0d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d218e6b192c4676c", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/BackfillProgressDialog.tsx:106"}, "properties": {"repobilityId": "5d3da8a4a44e1e76", "scanner": "scanner-primary", "fingerprint": "d218e6b192c4676c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-fac91e7ad7c1b51c", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/OptionOrderDialog.tsx:220"}, "properties": {"repobilityId": "263ab5f227836d16", "scanner": "scanner-primary", "fingerprint": "fac91e7ad7c1b51c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-c6b59f55d82ec1a5", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/AddGroupDialog.tsx:358"}, "properties": {"repobilityId": "a8b9c0517c0dc3f1", "scanner": "scanner-primary", "fingerprint": "c6b59f55d82ec1a5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-59317f2fb4612837", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/RollOptionDialog.tsx:560"}, "properties": {"repobilityId": "fe6dabf2196d94f8", "scanner": "scanner-primary", "fingerprint": "59317f2fb4612837", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-d99c21cbf9cf509b", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/UploadProgressDialog.tsx:98"}, "properties": {"repobilityId": "a9356b62fad0636b", "scanner": "scanner-primary", "fingerprint": "d99c21cbf9cf509b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-3cfa81db76120789", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/PriceSyncDialog.tsx:171"}, "properties": {"repobilityId": "90530be80b96b34b", "scanner": "scanner-primary", "fingerprint": "3cfa81db76120789", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-5963cd0069823e55", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 scott-agent-trader/src/renderer/src/components/CloseGroupDialog.tsx:496"}, "properties": {"repobilityId": "80bffcf8b2019bef", "scanner": "scanner-primary", "fingerprint": "5963cd0069823e55", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-649ed4cd5b3bc1f5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/renderer/src/hooks/useAccountStore.ts:409"}, "properties": {"repobilityId": "bcd68e946f7f07d9", "scanner": "scanner-primary", "fingerprint": "649ed4cd5b3bc1f5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-53fedd8df0cbb2f6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/aliasCache.ts:48"}, "properties": {"repobilityId": "70c9549d1047cbc4", "scanner": "scanner-primary", "fingerprint": "53fedd8df0cbb2f6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-09bae3b2c8accac8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/index.ts:120"}, "properties": {"repobilityId": "24b063d5d41ea387", "scanner": "scanner-primary", "fingerprint": "09bae3b2c8accac8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c8a10cf66c4ad26d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/rates.ts:27"}, "properties": {"repobilityId": "d2bf05916bd405d1", "scanner": "scanner-primary", "fingerprint": "c8a10cf66c4ad26d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4905f0dc69411fc9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ai/advisor.ts:69"}, "properties": {"repobilityId": "dbadc02ecbf90013", "scanner": "scanner-primary", "fingerprint": "4905f0dc69411fc9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-29c115c7c787b68e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/quotes.ts:117"}, "properties": {"repobilityId": "1640e2dc51c0c000", "scanner": "scanner-primary", "fingerprint": "29c115c7c787b68e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-21d3f94a27f07e4a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/historical.ts:81"}, "properties": {"repobilityId": "a4b178671738eb14", "scanner": "scanner-primary", "fingerprint": "21d3f94a27f07e4a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-63afec9b85074443", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/accounts.ts:237"}, "properties": {"repobilityId": "4238a07a23a9215c", "scanner": "scanner-primary", "fingerprint": "63afec9b85074443", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-40f4185388251cfe", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/connection.ts:72"}, "properties": {"repobilityId": "c2ab48096bed1674", "scanner": "scanner-primary", "fingerprint": "40f4185388251cfe", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6452eac36a9262cf", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/options.ts:226"}, "properties": {"repobilityId": "c7b789caafad0de0", "scanner": "scanner-primary", "fingerprint": "6452eac36a9262cf", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-91937cd972dcc9a3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/gateway.ts:165"}, "properties": {"repobilityId": "aa066868cfb034c6", "scanner": "scanner-primary", "fingerprint": "91937cd972dcc9a3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e8f961bbbd215475", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scott-agent-trader/src/main/ib/orders.ts:125"}, "properties": {"repobilityId": "474154becbaf34f0", "scanner": "scanner-primary", "fingerprint": "e8f961bbbd215475", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-615bcb57072fef98", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 scripts/debug_deposits.js:8"}, "properties": {"repobilityId": "ea5f7303815ad74f", "scanner": "scanner-primary", "fingerprint": "615bcb57072fef98", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ec293bf847572ffb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/scheduled.ts:8"}, "properties": {"repobilityId": "aeab5d1db11a29c6", "scanner": "scanner-primary", "fingerprint": "ec293bf847572ffb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c47dff298cc30691", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/components/UserProfileMenu.tsx:75"}, "properties": {"repobilityId": "612801d4120d8098", "scanner": "scanner-primary", "fingerprint": "c47dff298cc30691", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5fddf2f72e8c98fe", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/GroupTradesDialog.tsx:679"}, "properties": {"repobilityId": "2ebbd3435f016f5e", "scanner": "scanner-primary", "fingerprint": "5fddf2f72e8c98fe", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-31a495ea2fa9be86", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/components/NetEquityChart.tsx:27"}, "properties": {"repobilityId": "136a6148e2eacaf5", "scanner": "scanner-primary", "fingerprint": "31a495ea2fa9be86", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-59db365451df4627", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/components/Navbar.tsx:31"}, "properties": {"repobilityId": "eed7160564068e71", "scanner": "scanner-primary", "fingerprint": "59db365451df4627", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5e403fbf1c0ec9fd", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 src/app/layout.tsx:28"}, "properties": {"repobilityId": "0d72350965068f5b", "scanner": "scanner-primary", "fingerprint": "5e403fbf1c0ec9fd", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-07820530ad17c6c7", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 src/app/blog/[id]/page.tsx:96"}, "properties": {"repobilityId": "2630e9065dd6f752", "scanner": "scanner-primary", "fingerprint": "07820530ad17c6c7", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-f7bbc9ed60c6b33f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/app/options/page.tsx:110"}, "properties": {"repobilityId": "253d26b39276453b", "scanner": "scanner-primary", "fingerprint": "f7bbc9ed60c6b33f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-169aa6a44eb6e0b8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/app/options/[userId]/page.tsx:136"}, "properties": {"repobilityId": "510c810968bb7414", "scanner": "scanner-primary", "fingerprint": "169aa6a44eb6e0b8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a0c75d647fc808ed", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/options/route.ts:263"}, "properties": {"repobilityId": "e7d8e7dd023b8ffa", "scanner": "scanner-primary", "fingerprint": "a0c75d647fc808ed", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9149e24dd31f0f93", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/users/route.ts:28"}, "properties": {"repobilityId": "08bbf69834bc6229", "scanner": "scanner-primary", "fingerprint": "9149e24dd31f0f93", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-121e396dabbf77b0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/auth/me/route.ts:10"}, "properties": {"repobilityId": "412cf12e0ae9de81", "scanner": "scanner-primary", "fingerprint": "121e396dabbf77b0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e93c78f309e2d199", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/scheduled/auto-update/route.ts:14"}, "properties": {"repobilityId": "8abfbe0675e0612e", "scanner": "scanner-primary", "fingerprint": "e93c78f309e2d199", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-82620b5156d12c4d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/test-alpha-vantage/route.ts:39"}, "properties": {"repobilityId": "01ac57ba617b580d", "scanner": "scanner-primary", "fingerprint": "82620b5156d12c4d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ef47046f82304db5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/deposits/route.ts:93"}, "properties": {"repobilityId": "f6b5914ee843a8de", "scanner": "scanner-primary", "fingerprint": "ef47046f82304db5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-35ed66d631a3b864", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/deposits/import/route.ts:68"}, "properties": {"repobilityId": "3496d84b5d4398d8", "scanner": "scanner-primary", "fingerprint": "35ed66d631a3b864", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d4c597aa43c285b1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/market-data/clear-cache/route.ts:47"}, "properties": {"repobilityId": "e6f3e7e7bb0aec77", "scanner": "scanner-primary", "fingerprint": "d4c597aa43c285b1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ab54b2c2a0df15d3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/market-data/backfill/route.ts:33"}, "properties": {"repobilityId": "7932f6f906b887cc", "scanner": "scanner-primary", "fingerprint": "ab54b2c2a0df15d3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e3805b9d42f36fe5", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 src/app/api/market-data/fill-gaps/route.ts:16"}, "properties": {"repobilityId": "1b670e90581b6949", "scanner": "scanner-primary", "fingerprint": "e3805b9d42f36fe5", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-c511062fa73485e8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/market-data/fill-gaps/route.ts:72"}, "properties": {"repobilityId": "615815861f0fb076", "scanner": "scanner-primary", "fingerprint": "c511062fa73485e8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b06dd255e69291a8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/app/api/net-equity/import-ib/route.ts:599"}, "properties": {"repobilityId": "3930e16c808ed22f", "scanner": "scanner-primary", "fingerprint": "b06dd255e69291a8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ac13c5fd16a94648", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/app/net-equity/[userId]/page.tsx:165"}, "properties": {"repobilityId": "7c02d338c57767d0", "scanner": "scanner-primary", "fingerprint": "ac13c5fd16a94648", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-714310332b946efd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/lib/market-data.ts:20"}, "properties": {"repobilityId": "8eb8f26d9767ea80", "scanner": "scanner-primary", "fingerprint": "714310332b946efd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4ab780c3c13e1104", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/lib/response-cache.ts:20"}, "properties": {"repobilityId": "8b65f78099de4b62", "scanner": "scanner-primary", "fingerprint": "4ab780c3c13e1104", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a33296f2b2afd8c9", "level": "error", "message": {"text": "Possible secret in wrangler.toml"}, "properties": {"repobilityId": "52be7a89a1aa4a44", "scanner": "scanner-primary", "fingerprint": "a33296f2b2afd8c9", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "wrangler.toml"}, "region": {"startLine": 58}}}]}, {"ruleId": "scanner-a33296f2b2afd8c9", "level": "error", "message": {"text": "Possible secret in wrangler.toml"}, "properties": {"repobilityId": "52be7a89a1aa4a44", "scanner": "scanner-primary", "fingerprint": "a33296f2b2afd8c9", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "wrangler.toml"}, "region": {"startLine": 98}}}]}, {"ruleId": "scanner-e73ef1eeee89e48d", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in fix_admin_pwd.js:2"}, "properties": {"repobilityId": "4d0114634f7a6d3c", "scanner": "scanner-primary", "fingerprint": "e73ef1eeee89e48d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "fix_admin_pwd.js"}, "region": {"startLine": 2}}}]}, {"ruleId": "scanner-bc8d51978d07c3b7", "level": "error", "message": {"text": "Possible secret in scott-agent-trader/src/main/index.ts"}, "properties": {"repobilityId": "fad05331ed26477e", "scanner": "scanner-primary", "fingerprint": "bc8d51978d07c3b7", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scott-agent-trader/src/main/index.ts"}, "region": {"startLine": 414}}}]}, {"ruleId": "scanner-bc8d51978d07c3b7", "level": "error", "message": {"text": "Possible secret in scott-agent-trader/src/main/index.ts"}, "properties": {"repobilityId": "fad05331ed26477e", "scanner": "scanner-primary", "fingerprint": "bc8d51978d07c3b7", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scott-agent-trader/src/main/index.ts"}, "region": {"startLine": 878}}}]}, {"ruleId": "scanner-714e646573538a2c", "level": "error", "message": {"text": "Possible secret in scott-agent-trader/src/main/rates.ts"}, "properties": {"repobilityId": "10b41748af72150f", "scanner": "scanner-primary", "fingerprint": "714e646573538a2c", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scott-agent-trader/src/main/rates.ts"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-8a539dfecfb89988", "level": "error", "message": {"text": "Possible secret in scott-agent-trader/src/main/ai/advisor.ts"}, "properties": {"repobilityId": "cf7a7d0c71a4f040", "scanner": "scanner-primary", "fingerprint": "8a539dfecfb89988", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scott-agent-trader/src/main/ai/advisor.ts"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-84ec842a8d1a4304", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scott-agent-trader/src/main/ib/gateway.ts:1"}, "properties": {"repobilityId": "02b1828a479cbec7", "scanner": "scanner-primary", "fingerprint": "84ec842a8d1a4304", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scott-agent-trader/src/main/ib/gateway.ts"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-90cf0accb0d43767", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-roll-purpose-v2.mjs:3"}, "properties": {"repobilityId": "9ae0d26038336a3a", "scanner": "scanner-primary", "fingerprint": "90cf0accb0d43767", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-roll-purpose-v2.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-c597d0d79a8f76dd", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-strike-cushion-plain.mjs:3"}, "properties": {"repobilityId": "b2e59f8e90b80a68", "scanner": "scanner-primary", "fingerprint": "c597d0d79a8f76dd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-strike-cushion-plain.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-ec85f9bba7c66b89", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-1-keep-strike.mjs:3"}, "properties": {"repobilityId": "48130fa74681dc09", "scanner": "scanner-primary", "fingerprint": "ec85f9bba7c66b89", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-1-keep-strike.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-6cdea263e98a9f1a", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-cost-add-profit.mjs:3"}, "properties": {"repobilityId": "35d323a725e926dc", "scanner": "scanner-primary", "fingerprint": "6cdea263e98a9f1a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-cost-add-profit.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-ad200ab954ab2c33", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/insert-blog-options-101.mjs:3"}, "properties": {"repobilityId": "cd1c0b04857c0380", "scanner": "scanner-primary", "fingerprint": "ad200ab954ab2c33", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/insert-blog-options-101.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-1ac895c092401f4c", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-1-merge-paras.mjs:3"}, "properties": {"repobilityId": "5e7fc5efc3b35d0e", "scanner": "scanner-primary", "fingerprint": "1ac895c092401f4c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-1-merge-paras.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-2741267e49587ec8", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-1-title-v3.mjs:3"}, "properties": {"repobilityId": "a509351cf61f3169", "scanner": "scanner-primary", "fingerprint": "2741267e49587ec8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-1-title-v3.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-b4f6987040114b43", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row3-space.mjs:3"}, "properties": {"repobilityId": "49c66550db0724c8", "scanner": "scanner-primary", "fingerprint": "b4f6987040114b43", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-row3-space.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-457afcad9052c9cd", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-time-style.mjs:3"}, "properties": {"repobilityId": "8ea8ff6fab641106", "scanner": "scanner-primary", "fingerprint": "457afcad9052c9cd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-time-style.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-8d1726ae58637c4e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-1-merge-fear-para.mjs:3"}, "properties": {"repobilityId": "2bc00cd18d7ffe2e", "scanner": "scanner-primary", "fingerprint": "8d1726ae58637c4e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-1-merge-fear-para.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-aabbcc923c2c7bed", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row3b.mjs:3"}, "properties": {"repobilityId": "3e2caa03fadaca08", "scanner": "scanner-primary", "fingerprint": "aabbcc923c2c7bed", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-row3b.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-a313ce318057bf3a", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-analyze.mjs:3"}, "properties": {"repobilityId": "03824e86864a7764", "scanner": "scanner-primary", "fingerprint": "a313ce318057bf3a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-analyze.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-32768b55aa9f456f", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-5-strike-label-left.mjs:5"}, "properties": {"repobilityId": "acf48d7421c0b982", "scanner": "scanner-primary", "fingerprint": "32768b55aa9f456f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-5-strike-label-left.mjs"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-0e8f4286d02e333e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-risk-profile-simple.mjs:3"}, "properties": {"repobilityId": "821beb37c5b75213", "scanner": "scanner-primary", "fingerprint": "0e8f4286d02e333e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-risk-profile-simple.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-951dca293aee6079", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-intro.mjs:6"}, "properties": {"repobilityId": "092a574ccb70ecde", "scanner": "scanner-primary", "fingerprint": "951dca293aee6079", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-intro.mjs"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-bfa2d9908a7e962d", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-roll-strike.mjs:3"}, "properties": {"repobilityId": "e610f6ccaa4305aa", "scanner": "scanner-primary", "fingerprint": "bfa2d9908a7e962d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-roll-strike.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-62f2f5b99320f2d8", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-critique-plain.mjs:3"}, "properties": {"repobilityId": "21303d0a51c1a027", "scanner": "scanner-primary", "fingerprint": "62f2f5b99320f2d8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-critique-plain.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-c928c0e6b033a555", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-credit-zh.mjs:3"}, "properties": {"repobilityId": "22c128a97e0403c8", "scanner": "scanner-primary", "fingerprint": "c928c0e6b033a555", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-credit-zh.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-cafac129040293bc", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row3-callout.mjs:4"}, "properties": {"repobilityId": "797f777d987db4c9", "scanner": "scanner-primary", "fingerprint": "cafac129040293bc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-row3-callout.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-bb951ccaace7a5da", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-5-title-v2.mjs:3"}, "properties": {"repobilityId": "f78ef6d77c7f1b06", "scanner": "scanner-primary", "fingerprint": "bb951ccaace7a5da", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-5-title-v2.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-72332e2784099b04", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-add-time.mjs:3"}, "properties": {"repobilityId": "ddfe34200aa059f2", "scanner": "scanner-primary", "fingerprint": "72332e2784099b04", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-add-time.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-447002d453e0a2c2", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-reduce-bold.mjs:5"}, "properties": {"repobilityId": "b08504651f942260", "scanner": "scanner-primary", "fingerprint": "447002d453e0a2c2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-reduce-bold.mjs"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-3dc94a0839349ed3", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-margin-24.mjs:5"}, "properties": {"repobilityId": "32f762ba71fef27e", "scanner": "scanner-primary", "fingerprint": "3dc94a0839349ed3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-margin-24.mjs"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-a5d35f4bd8df1425", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-summary-rewrite.mjs:4"}, "properties": {"repobilityId": "62b92068423e78a3", "scanner": "scanner-primary", "fingerprint": "a5d35f4bd8df1425", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-summary-rewrite.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-c50aa0fecb779533", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-loss-color.mjs:3"}, "properties": {"repobilityId": "4c821c0e5f1a1737", "scanner": "scanner-primary", "fingerprint": "c50aa0fecb779533", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-loss-color.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-b5666fb054dad32d", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-callout-tighten.mjs:3"}, "properties": {"repobilityId": "7dd8b1e1513b6be0", "scanner": "scanner-primary", "fingerprint": "b5666fb054dad32d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-callout-tighten.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-d6b4e33b1c318979", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-strike-label-left.mjs:3"}, "properties": {"repobilityId": "5f6d445152a794f4", "scanner": "scanner-primary", "fingerprint": "d6b4e33b1c318979", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-strike-label-left.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-1c7225856dcdcb88", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-title.mjs:3"}, "properties": {"repobilityId": "3493d698169c3b1c", "scanner": "scanner-primary", "fingerprint": "1c7225856dcdcb88", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-title.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-53cb40b1323420a5", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-1-tags-sell-put.mjs:3"}, "properties": {"repobilityId": "233e9794ce670cfb", "scanner": "scanner-primary", "fingerprint": "53cb40b1323420a5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-1-tags-sell-put.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-25e9445c6c86eaff", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-roll-purpose.mjs:3"}, "properties": {"repobilityId": "43d8226e0af5e30a", "scanner": "scanner-primary", "fingerprint": "25e9445c6c86eaff", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-roll-purpose.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-4216a9e7bbdd8cad", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-analysis-rewrite.mjs:5"}, "properties": {"repobilityId": "4f469f4cb1123d5f", "scanner": "scanner-primary", "fingerprint": "4216a9e7bbdd8cad", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-analysis-rewrite.mjs"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-d74010b66a8d0d5d", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-92-strike-left.mjs:3"}, "properties": {"repobilityId": "2fd947e23c72508a", "scanner": "scanner-primary", "fingerprint": "d74010b66a8d0d5d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-92-strike-left.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-e6745167c045c38c", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row1b.mjs:3"}, "properties": {"repobilityId": "7440d00e211e063b", "scanner": "scanner-primary", "fingerprint": "e6745167c045c38c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-row1b.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-724ab63e2d05a56e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-net-debit.mjs:3"}, "properties": {"repobilityId": "629ecaa2cd7d51d2", "scanner": "scanner-primary", "fingerprint": "724ab63e2d05a56e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-net-debit.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-540e1d5ab043ddc0", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-emoji-merge.mjs:4"}, "properties": {"repobilityId": "935523c5b902b424", "scanner": "scanner-primary", "fingerprint": "540e1d5ab043ddc0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-emoji-merge.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-e8dbc2a396225038", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-h3-maybe.mjs:3"}, "properties": {"repobilityId": "7ecb3c69efea9377", "scanner": "scanner-primary", "fingerprint": "e8dbc2a396225038", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-h3-maybe.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-4524ca4105b056da", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-itm.mjs:3"}, "properties": {"repobilityId": "00543f1f46cae143", "scanner": "scanner-primary", "fingerprint": "4524ca4105b056da", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-itm.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-cc21bda1165f277d", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-intro2.mjs:3"}, "properties": {"repobilityId": "fb678aadc9e30691", "scanner": "scanner-primary", "fingerprint": "cc21bda1165f277d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-intro2.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-c399a01e8e4f4a29", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-summary-rewrite.mjs:4"}, "properties": {"repobilityId": "ba38b413c0ad7364", "scanner": "scanner-primary", "fingerprint": "c399a01e8e4f4a29", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-summary-rewrite.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-964b0add4a64ac36", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-right-padding.mjs:3"}, "properties": {"repobilityId": "a20d352120837382", "scanner": "scanner-primary", "fingerprint": "964b0add4a64ac36", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-right-padding.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-20622f53f208267a", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-reduce-bold.mjs:5"}, "properties": {"repobilityId": "104a2fc72d44771b", "scanner": "scanner-primary", "fingerprint": "20622f53f208267a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-reduce-bold.mjs"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-a3b245408630b4b3", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-background.mjs:4"}, "properties": {"repobilityId": "326600d4d8b654bc", "scanner": "scanner-primary", "fingerprint": "a3b245408630b4b3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-remove-background.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-8cca2d190a81d86b", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-time-price.mjs:3"}, "properties": {"repobilityId": "c1c90356e99285d1", "scanner": "scanner-primary", "fingerprint": "8cca2d190a81d86b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-time-price.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-f00eda22e18a931e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-net-credit-note.mjs:3"}, "properties": {"repobilityId": "57bf773904106c4c", "scanner": "scanner-primary", "fingerprint": "f00eda22e18a931e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-net-credit-note.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-e906f81c0f4023b3", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-center-label.mjs:4"}, "properties": {"repobilityId": "d62f9fb20aa4c395", "scanner": "scanner-primary", "fingerprint": "e906f81c0f4023b3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-center-label.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-947a5b082f7684ef", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-chart-10day.mjs:3"}, "properties": {"repobilityId": "3cf8cdd5c3695683", "scanner": "scanner-primary", "fingerprint": "947a5b082f7684ef", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-chart-10day.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-e75007e8fce03f01", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-zero-cost.mjs:3"}, "properties": {"repobilityId": "ee03d72873a00dc7", "scanner": "scanner-primary", "fingerprint": "e75007e8fce03f01", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-remove-zero-cost.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-f26984aeeddcff8e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-defense-rewrite.mjs:3"}, "properties": {"repobilityId": "14c9ce40b5f56f78", "scanner": "scanner-primary", "fingerprint": "f26984aeeddcff8e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-defense-rewrite.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-5364c28a07cb1c22", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-chart.mjs:6"}, "properties": {"repobilityId": "5546b36af677b331", "scanner": "scanner-primary", "fingerprint": "5364c28a07cb1c22", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-chart.mjs"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-4f0904bcb1ab582e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-roll-bullets.mjs:3"}, "properties": {"repobilityId": "db4fff1cd53ac267", "scanner": "scanner-primary", "fingerprint": "4f0904bcb1ab582e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-roll-bullets.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-348bd5763d70cc18", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-reddot.mjs:3"}, "properties": {"repobilityId": "24dff4b89e6b500e", "scanner": "scanner-primary", "fingerprint": "348bd5763d70cc18", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-remove-reddot.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-8705c4884c2231c1", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-net-collect.mjs:3"}, "properties": {"repobilityId": "2496546150841993", "scanner": "scanner-primary", "fingerprint": "8705c4884c2231c1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-net-collect.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-0ae4b6cf0c513602", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-buffer-spread.mjs:6"}, "properties": {"repobilityId": "c5783efb6ea5d0d2", "scanner": "scanner-primary", "fingerprint": "0ae4b6cf0c513602", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-buffer-spread.mjs"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-261a63823063798c", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-layer2-rewrite.mjs:3"}, "properties": {"repobilityId": "df1e9f0850f29ec0", "scanner": "scanner-primary", "fingerprint": "261a63823063798c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-layer2-rewrite.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-c03beb25735bb047", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/insert-blog-seller-loss-lessons.mjs:3"}, "properties": {"repobilityId": "71a23de7c39be987", "scanner": "scanner-primary", "fingerprint": "c03beb25735bb047", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/insert-blog-seller-loss-lessons.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-56ffd9e41ac3cd26", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/insert-blog-iv-video.mjs:4"}, "properties": {"repobilityId": "6e34faee36b52df8", "scanner": "scanner-primary", "fingerprint": "56ffd9e41ac3cd26", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/insert-blog-iv-video.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-6d9f1d86b4eb9a7c", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-title-v4.mjs:3"}, "properties": {"repobilityId": "953d907bcdd34781", "scanner": "scanner-primary", "fingerprint": "6d9f1d86b4eb9a7c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-title-v4.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-ef5a7a0d285208c1", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-pay-to-roll-2.mjs:3"}, "properties": {"repobilityId": "51d4a60272ffd953", "scanner": "scanner-primary", "fingerprint": "ef5a7a0d285208c1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-pay-to-roll-2.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-db6b357d2866c6f3", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-figcaption.mjs:3"}, "properties": {"repobilityId": "b4df987dccee9bdd", "scanner": "scanner-primary", "fingerprint": "db6b357d2866c6f3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-figcaption.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-25dcef8d81e66adf", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-8305.mjs:3"}, "properties": {"repobilityId": "a003dacd91bd7ae1", "scanner": "scanner-primary", "fingerprint": "25dcef8d81e66adf", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-remove-8305.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-c7ba0941f3dae53c", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-table-dark-mode.mjs:4"}, "properties": {"repobilityId": "bd2fa05f0c92c123", "scanner": "scanner-primary", "fingerprint": "c7ba0941f3dae53c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-table-dark-mode.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-684561b4c70cbc9e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-2dte-sellput.mjs:3"}, "properties": {"repobilityId": "c93a446a30b53550", "scanner": "scanner-primary", "fingerprint": "684561b4c70cbc9e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-2dte-sellput.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-bf11005d46dfffb5", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row3c.mjs:3"}, "properties": {"repobilityId": "9f3b3fef289ccaea", "scanner": "scanner-primary", "fingerprint": "bf11005d46dfffb5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-row3c.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-060df0689cf9b47a", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-roll-to-zhanqi.mjs:3"}, "properties": {"repobilityId": "3fc08f3c4955a77f", "scanner": "scanner-primary", "fingerprint": "060df0689cf9b47a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-roll-to-zhanqi.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-1d1da9b0c6d9c96e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-equal-margin.mjs:3"}, "properties": {"repobilityId": "add225f7cb257385", "scanner": "scanner-primary", "fingerprint": "1d1da9b0c6d9c96e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-equal-margin.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-5f795a52d97c45dc", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-risk-profile.mjs:3"}, "properties": {"repobilityId": "1242e5e80ed7d111", "scanner": "scanner-primary", "fingerprint": "5f795a52d97c45dc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-risk-profile.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-f6739f02f90b177c", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-abcd-to-1234.mjs:4"}, "properties": {"repobilityId": "3bdea7a81c385e88", "scanner": "scanner-primary", "fingerprint": "f6739f02f90b177c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-abcd-to-1234.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-710fd9ee8a9d6382", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-active-choice.mjs:3"}, "properties": {"repobilityId": "a62cfe7d8b740959", "scanner": "scanner-primary", "fingerprint": "710fd9ee8a9d6382", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-active-choice.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-f54c753aaa40e7c4", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-cost-account.mjs:3"}, "properties": {"repobilityId": "f59450b0ffb9ccf4", "scanner": "scanner-primary", "fingerprint": "f54c753aaa40e7c4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-cost-account.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-7b9abedafcaa5942", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-hindsight-phrase.mjs:3"}, "properties": {"repobilityId": "4adf3f0f77af7259", "scanner": "scanner-primary", "fingerprint": "7b9abedafcaa5942", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-hindsight-phrase.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-b3842158dc95a4f0", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-1-title-v2.mjs:3"}, "properties": {"repobilityId": "ea77c3168db5c3a6", "scanner": "scanner-primary", "fingerprint": "b3842158dc95a4f0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-1-title-v2.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-5345e23c10e88779", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-comma-to-period.mjs:3"}, "properties": {"repobilityId": "11722ac7206b1144", "scanner": "scanner-primary", "fingerprint": "5345e23c10e88779", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-comma-to-period.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-b7523383fc0aef95", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-pay-extreme.mjs:3"}, "properties": {"repobilityId": "4e793f94bb3f56b9", "scanner": "scanner-primary", "fingerprint": "b7523383fc0aef95", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-pay-extreme.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-13f0dddabdf7eec4", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-rebuttal-2-zh.mjs:3"}, "properties": {"repobilityId": "2dad44dd2c188606", "scanner": "scanner-primary", "fingerprint": "13f0dddabdf7eec4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-rebuttal-2-zh.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-503fcb3cf3580e03", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/insert-blog-4-sell-call-overdefensive.mjs:4"}, "properties": {"repobilityId": "9c43a4947de7240b", "scanner": "scanner-primary", "fingerprint": "503fcb3cf3580e03", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/insert-blog-4-sell-call-overdefensive.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-f6ce14729d068ff8", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-yaxis-right.mjs:3"}, "properties": {"repobilityId": "75ae4f0161df027b", "scanner": "scanner-primary", "fingerprint": "f6ce14729d068ff8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-yaxis-right.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-f9c65b593a49c06e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-strike-change.mjs:3"}, "properties": {"repobilityId": "7cb3bdeda43f3e7c", "scanner": "scanner-primary", "fingerprint": "f9c65b593a49c06e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-strike-change.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-1bf873c0d102eadc", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-title.mjs:4"}, "properties": {"repobilityId": "8997377332d124d0", "scanner": "scanner-primary", "fingerprint": "1bf873c0d102eadc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-title.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-b6495ed8c9d6ddf5", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-may22-apostrophe.mjs:3"}, "properties": {"repobilityId": "b157645b9f9d24be", "scanner": "scanner-primary", "fingerprint": "b6495ed8c9d6ddf5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-may22-apostrophe.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-814b01ed123c21cc", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-pay-to-roll.mjs:3"}, "properties": {"repobilityId": "ef5d29dc715e2ab6", "scanner": "scanner-primary", "fingerprint": "814b01ed123c21cc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-pay-to-roll.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-4332a8a3d0f78291", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-summary-zh.mjs:3"}, "properties": {"repobilityId": "30d28e1bb1c9a732", "scanner": "scanner-primary", "fingerprint": "4332a8a3d0f78291", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-summary-zh.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-6d56303712fae8ed", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-intro3.mjs:3"}, "properties": {"repobilityId": "125ba5c501ce1fbf", "scanner": "scanner-primary", "fingerprint": "6d56303712fae8ed", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-intro3.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-e9e3c9258309fc0b", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-remove-h3.mjs:3"}, "properties": {"repobilityId": "6c65b834d64cb067", "scanner": "scanner-primary", "fingerprint": "e9e3c9258309fc0b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-remove-h3.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-4cb1174193c54650", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-intro.mjs:5"}, "properties": {"repobilityId": "b1b3f93aa3c077e5", "scanner": "scanner-primary", "fingerprint": "4cb1174193c54650", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-intro.mjs"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-e3f8f0954b5fe319", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-commit-line.mjs:3"}, "properties": {"repobilityId": "efe12983825172f9", "scanner": "scanner-primary", "fingerprint": "e3f8f0954b5fe319", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-commit-line.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-264a8f45f4f10a94", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-quant.mjs:3"}, "properties": {"repobilityId": "f2dfc6862b1a423b", "scanner": "scanner-primary", "fingerprint": "264a8f45f4f10a94", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-remove-quant.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-53c49113045602e3", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-title-v3.mjs:3"}, "properties": {"repobilityId": "7a96756311e7c9d7", "scanner": "scanner-primary", "fingerprint": "53c49113045602e3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-title-v3.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-aae5640ca62eac11", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-title-v2.mjs:3"}, "properties": {"repobilityId": "44ccf59a9f487f0d", "scanner": "scanner-primary", "fingerprint": "aae5640ca62eac11", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-title-v2.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-802c9ba9a3757f88", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-titles-renumber.mjs:3"}, "properties": {"repobilityId": "ddef962231853279", "scanner": "scanner-primary", "fingerprint": "802c9ba9a3757f88", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-titles-renumber.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-f6fc29e160e598a4", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row4b.mjs:3"}, "properties": {"repobilityId": "f581186595e12deb", "scanner": "scanner-primary", "fingerprint": "f6fc29e160e598a4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-row4b.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-f1562dde78d9be2c", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-soften-defend.mjs:3"}, "properties": {"repobilityId": "ae26a997f0e733e4", "scanner": "scanner-primary", "fingerprint": "f1562dde78d9be2c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-soften-defend.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-82138b82fcb24fb8", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-callout-darkmode.mjs:5"}, "properties": {"repobilityId": "5e33db5a26190e13", "scanner": "scanner-primary", "fingerprint": "82138b82fcb24fb8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-callout-darkmode.mjs"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-9c28914fe4ab6de5", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-pay-138-revise.mjs:3"}, "properties": {"repobilityId": "229ca6fb75e0ef86", "scanner": "scanner-primary", "fingerprint": "9c28914fe4ab6de5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-pay-138-revise.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-071fc1051e0e2bbf", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-title-v2.mjs:3"}, "properties": {"repobilityId": "e7cd2ab02a8fedb0", "scanner": "scanner-primary", "fingerprint": "071fc1051e0e2bbf", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-title-v2.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-f702c4b6dcad090d", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-iv-video.mjs:4"}, "properties": {"repobilityId": "0fa43abbe0cb4a77", "scanner": "scanner-primary", "fingerprint": "f702c4b6dcad090d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-iv-video.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-83477bb97b72f762", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-called-away-phrase.mjs:3"}, "properties": {"repobilityId": "1eec2c956c53d500", "scanner": "scanner-primary", "fingerprint": "83477bb97b72f762", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-called-away-phrase.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-e40ad6d1274c18c0", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-merge-p.mjs:3"}, "properties": {"repobilityId": "fd3293b95b185c9b", "scanner": "scanner-primary", "fingerprint": "e40ad6d1274c18c0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-merge-p.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-a79c776e393c3076", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-rows-continuous.mjs:3"}, "properties": {"repobilityId": "9242765873bf8447", "scanner": "scanner-primary", "fingerprint": "a79c776e393c3076", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-rows-continuous.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-2a416ce25eed4218", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-remove-bottomline.mjs:4"}, "properties": {"repobilityId": "013206d38c3ac6f2", "scanner": "scanner-primary", "fingerprint": "2a416ce25eed4218", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-remove-bottomline.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-ff310c088ffd00cf", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row2.mjs:3"}, "properties": {"repobilityId": "9af5a496d1a72cbe", "scanner": "scanner-primary", "fingerprint": "ff310c088ffd00cf", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-row2.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-bbf4b53a889a02f6", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-h3-sellput.mjs:3"}, "properties": {"repobilityId": "7900bc39b58a28cb", "scanner": "scanner-primary", "fingerprint": "bbf4b53a889a02f6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-h3-sellput.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-ab18b1893c0ca7cb", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-highlight-sentence.mjs:3"}, "properties": {"repobilityId": "c65babc6b563aa52", "scanner": "scanner-primary", "fingerprint": "ab18b1893c0ca7cb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-highlight-sentence.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-fbcbe5e9d55f3560", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-put-strike.mjs:4"}, "properties": {"repobilityId": "b68b996feca51229", "scanner": "scanner-primary", "fingerprint": "fbcbe5e9d55f3560", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-put-strike.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-5d9004b6df5d8e20", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/insert-blog-seller-avoid-loss.mjs:3"}, "properties": {"repobilityId": "ee4a92e1274da15b", "scanner": "scanner-primary", "fingerprint": "5d9004b6df5d8e20", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/insert-blog-seller-avoid-loss.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-7d2e6c8486c1d789", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-cost-basis.mjs:3"}, "properties": {"repobilityId": "e08ca2bb2699b16b", "scanner": "scanner-primary", "fingerprint": "7d2e6c8486c1d789", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-cost-basis.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-151905ab472c70c3", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-risk-reward.mjs:3"}, "properties": {"repobilityId": "e6230722f8d09084", "scanner": "scanner-primary", "fingerprint": "151905ab472c70c3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-risk-reward.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-5744b535febd194f", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-pp-to-percent.mjs:3"}, "properties": {"repobilityId": "825989b66db0a930", "scanner": "scanner-primary", "fingerprint": "5744b535febd194f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-pp-to-percent.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-202fb3e8359a68aa", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/insert-blog-put-strike.mjs:4"}, "properties": {"repobilityId": "5fc4402f11bd609c", "scanner": "scanner-primary", "fingerprint": "202fb3e8359a68aa", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/insert-blog-put-strike.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-d89f7705156a7b78", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-5-chart-taller.mjs:6"}, "properties": {"repobilityId": "2f93cf547b3b3407", "scanner": "scanner-primary", "fingerprint": "d89f7705156a7b78", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-5-chart-taller.mjs"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-314f455ca9f614c3", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-opp-cost-zh.mjs:3"}, "properties": {"repobilityId": "d2f1337657a31d5f", "scanner": "scanner-primary", "fingerprint": "314f455ca9f614c3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-opp-cost-zh.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-845ab614be8e06a8", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row1.mjs:3"}, "properties": {"repobilityId": "f9c4aeef6c4c841d", "scanner": "scanner-primary", "fingerprint": "845ab614be8e06a8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-row1.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-3a9c37900b3b446a", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-remove-8938.mjs:3"}, "properties": {"repobilityId": "a770a9d0db7b527c", "scanner": "scanner-primary", "fingerprint": "3a9c37900b3b446a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-remove-8938.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-d7d096caace9b5f8", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-5-roll-boxes.mjs:4"}, "properties": {"repobilityId": "b33590f22e8a3fde", "scanner": "scanner-primary", "fingerprint": "d7d096caace9b5f8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-5-roll-boxes.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-b4902ea92363bbca", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-merge-cols.mjs:4"}, "properties": {"repobilityId": "eccd54d419a16ad6", "scanner": "scanner-primary", "fingerprint": "b4902ea92363bbca", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-merge-cols.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-7a583927094ec990", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-row2b.mjs:3"}, "properties": {"repobilityId": "1db377e4eb3274eb", "scanner": "scanner-primary", "fingerprint": "7a583927094ec990", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-row2b.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-a8d6d475304e0f21", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-bullet-fmt.mjs:3"}, "properties": {"repobilityId": "39a7b9f425cc88b9", "scanner": "scanner-primary", "fingerprint": "a8d6d475304e0f21", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-bullet-fmt.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-45866d8bfd9f2c0e", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-strike-font.mjs:3"}, "properties": {"repobilityId": "3d58d0d35b8534f6", "scanner": "scanner-primary", "fingerprint": "45866d8bfd9f2c0e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-strike-font.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-69110d9da5109ad2", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/insert-blog-5-same-day-double-roll.mjs:4"}, "properties": {"repobilityId": "55688ae77cd28d37", "scanner": "scanner-primary", "fingerprint": "69110d9da5109ad2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/insert-blog-5-same-day-double-roll.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-e87a699e38f51cb1", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-center-label2.mjs:4"}, "properties": {"repobilityId": "44284221b2d43f5e", "scanner": "scanner-primary", "fingerprint": "e87a699e38f51cb1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-center-label2.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-80cc269463bf06da", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-consolidate.mjs:3"}, "properties": {"repobilityId": "59f36802f93a81b7", "scanner": "scanner-primary", "fingerprint": "80cc269463bf06da", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-consolidate.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-4c8db9eb4d1b8881", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-1-title-v4.mjs:3"}, "properties": {"repobilityId": "966bb8a36aac2089", "scanner": "scanner-primary", "fingerprint": "4c8db9eb4d1b8881", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-1-title-v4.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-53434f8a56ad6174", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-rebuttal-quote.mjs:3"}, "properties": {"repobilityId": "2912c8cbe29acbf3", "scanner": "scanner-primary", "fingerprint": "53434f8a56ad6174", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-rebuttal-quote.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-5fb500868606edbc", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-merge-cols2.mjs:4"}, "properties": {"repobilityId": "be5c13ba8e1850b4", "scanner": "scanner-primary", "fingerprint": "5fb500868606edbc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-merge-cols2.mjs"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-8d2b0f20e889177a", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-trader-line.mjs:3"}, "properties": {"repobilityId": "356d3791fd85481e", "scanner": "scanner-primary", "fingerprint": "8d2b0f20e889177a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-trader-line.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-65df3af9d337b4b7", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-3-buffer-chart.mjs:5"}, "properties": {"repobilityId": "2a7658f91cf445ca", "scanner": "scanner-primary", "fingerprint": "65df3af9d337b4b7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-3-buffer-chart.mjs"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-e51848f1a10b5c13", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-tags-merge-sell.mjs:3"}, "properties": {"repobilityId": "6421bbf050a82058", "scanner": "scanner-primary", "fingerprint": "e51848f1a10b5c13", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-tags-merge-sell.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-1774dcd9738556e8", "level": "warning", "message": {"text": "Insecure pattern 'node_child_process' in scripts/update-blog-4-short-dte-explain.mjs:3"}, "properties": {"repobilityId": "879f169a7ebfed4c", "scanner": "scanner-primary", "fingerprint": "1774dcd9738556e8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "node_child_process"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/update-blog-4-short-dte-explain.mjs"}, "region": {"startLine": 3}}}]}, {"ruleId": "scanner-3b9400f1bb02f28c", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in src/components/TradingViewWidget.tsx:24"}, "properties": {"repobilityId": "780748537d31e51a", "scanner": "scanner-primary", "fingerprint": "3b9400f1bb02f28c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/components/TradingViewWidget.tsx"}, "region": {"startLine": 24}}}]}, {"ruleId": "scanner-524b0a8ad6fa08a1", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in src/app/layout.tsx:28"}, "properties": {"repobilityId": "0bca654fa2052eb0", "scanner": "scanner-primary", "fingerprint": "524b0a8ad6fa08a1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/app/layout.tsx"}, "region": {"startLine": 28}}}]}, {"ruleId": "scanner-451763545e26e75c", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in src/app/blog/[id]/page.tsx:96"}, "properties": {"repobilityId": "71511bb5f9514663", "scanner": "scanner-primary", "fingerprint": "451763545e26e75c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/app/blog/[id]/page.tsx"}, "region": {"startLine": 96}}}]}, {"ruleId": "scanner-7d8492188c6a3f0c", "level": "error", "message": {"text": "Possible secret in src/lib/fred.ts"}, "properties": {"repobilityId": "d489cf01474de515", "scanner": "scanner-primary", "fingerprint": "7d8492188c6a3f0c", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/lib/fred.ts"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-98eac7c7ee5d35f9", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "59aae12d97211723", "scanner": "scanner-primary", "fingerprint": "98eac7c7ee5d35f9", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy-production.yml"}, "region": {"startLine": 16}}}]}, {"ruleId": "scanner-98eac7c7ee5d35f9", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "3237fa295d69131d", "scanner": "scanner-primary", "fingerprint": "98eac7c7ee5d35f9", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy-production.yml"}, "region": {"startLine": 19}}}]}, {"ruleId": "scanner-36fd3c86ff87e5ff", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "75e29310f7a503b9", "scanner": "scanner-primary", "fingerprint": "36fd3c86ff87e5ff", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy-staging.yml"}, "region": {"startLine": 16}}}]}, {"ruleId": "scanner-36fd3c86ff87e5ff", "level": "note", "message": {"text": "GitHub Action is tag-pinned rather than SHA-pinned"}, "properties": {"repobilityId": "0ea945589fbed9a2", "scanner": "scanner-primary", "fingerprint": "36fd3c86ff87e5ff", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "github-actions", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".github/workflows/deploy-staging.yml"}, "region": {"startLine": 19}}}]}, {"ruleId": "scanner-7dcc0b6f68c32dea", "level": "note", "message": {"text": "package.json defines install-time lifecycle scripts"}, "properties": {"repobilityId": "ba0b5b8a38d95295", "scanner": "scanner-primary", "fingerprint": "7dcc0b6f68c32dea", "layer": "cicd", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "npm", "install-scripts"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scott-agent-trader/package.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-b307b593b25ea3cf", "level": "note", "message": {"text": "Very large file: scott-agent-trader/src/renderer/src/components/AccountOverview.tsx (5007 lines)"}, "properties": {"repobilityId": "e9c6920bdbe2c064", "scanner": "scanner-primary", "fingerprint": "b307b593b25ea3cf", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6ef8b6873cb5b05b", "level": "note", "message": {"text": "Very large file: scott-agent-trader/src/main/index.ts (1417 lines)"}, "properties": {"repobilityId": "8dd40e5d7d40506e", "scanner": "scanner-primary", "fingerprint": "6ef8b6873cb5b05b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d886d969a3827614", "level": "note", "message": {"text": "Very large file: src/app/options/[userId]/page.tsx (970 lines)"}, "properties": {"repobilityId": "453739f534a335d8", "scanner": "scanner-primary", "fingerprint": "d886d969a3827614", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-dfbaa7bb15b101bd", "level": "note", "message": {"text": "Very large file: src/app/api/users/route.ts (989 lines)"}, "properties": {"repobilityId": "2cd62a4f6ba23f1d", "scanner": "scanner-primary", "fingerprint": "dfbaa7bb15b101bd", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a565997c9ce74837", "level": "note", "message": {"text": "Very large file: src/app/api/users/import/route.ts (916 lines)"}, "properties": {"repobilityId": "f358bd59c2acdd7d", "scanner": "scanner-primary", "fingerprint": "a565997c9ce74837", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-be689f4fd70ba73a", "level": "note", "message": {"text": "Very large file: src/app/api/net-equity/import-ib/route.ts (1082 lines)"}, "properties": {"repobilityId": "fbc774957af7de20", "scanner": "scanner-primary", "fingerprint": "be689f4fd70ba73a", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b6f23cee53a69253", "level": "note", "message": {"text": "Very large file: src/app/admin/users/page.tsx (2657 lines)"}, "properties": {"repobilityId": "3c038f10bce36e60", "scanner": "scanner-primary", "fingerprint": "b6f23cee53a69253", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-66ab91e167881e06", "level": "note", "message": {"text": "Very large file: src/app/daily-trades/page.tsx (1306 lines)"}, "properties": {"repobilityId": "2bb74188decca15c", "scanner": "scanner-primary", "fingerprint": "66ab91e167881e06", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6893a6c8b0861585", "level": "warning", "message": {"text": "Very low test-to-source ratio"}, "properties": {"repobilityId": "54a7de3f06314bf0", "scanner": "scanner-primary", "fingerprint": "6893a6c8b0861585", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["tests", "coverage"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "4a77455d49387a80", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "f4c71a843bf96f26", "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": "38b6bdcfab3e93d0", "scanner": "scanner-primary", "fingerprint": "72b2a6250083a784", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "incomplete", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "82621061afc074fe", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-749d4bc1bd66df5f", "level": "warning", "message": {"text": "Agent instructions exist but release-hardening basics are missing"}, "properties": {"repobilityId": "52b94f650be1529f", "scanner": "scanner-primary", "fingerprint": "749d4bc1bd66df5f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "2e08b317ac916782", "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": "68588e87a59cfb87", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-383eee0894829f12", "level": "none", "message": {"text": "Commented-code block (6 lines) in worker-entry.mjs:3"}, "properties": {"repobilityId": "cbcf7fb4fe6e4392", "scanner": "scanner-primary", "fingerprint": "383eee0894829f12", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-78b8d6fed7eb7fab", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 test-delete-api.js:36"}, "properties": {"repobilityId": "f38bdf49c0e2ffea", "scanner": "scanner-primary", "fingerprint": "78b8d6fed7eb7fab", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0efbc6f934c93aea", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scott-agent-trader/src/renderer/src/App.tsx:265"}, "properties": {"repobilityId": "d903b54153873bf6", "scanner": "scanner-primary", "fingerprint": "0efbc6f934c93aea", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-99a6597bf13c4f9f", "level": "none", "message": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/components/AccountOverview.tsx:414"}, "properties": {"repobilityId": "e00ef35e97e16352", "scanner": "scanner-primary", "fingerprint": "99a6597bf13c4f9f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8de807418e104af6", "level": "none", "message": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/components/RollOptionDialog.tsx:108"}, "properties": {"repobilityId": "6dad39847ffc24a1", "scanner": "scanner-primary", "fingerprint": "8de807418e104af6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d76fb3717d94919b", "level": "none", "message": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/components/ConnectionStatus.tsx:57"}, "properties": {"repobilityId": "362520c7768ca3e8", "scanner": "scanner-primary", "fingerprint": "d76fb3717d94919b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9bed1f13b566f760", "level": "none", "message": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/lib/prefsSync.ts:1"}, "properties": {"repobilityId": "78615d6c68f49e0b", "scanner": "scanner-primary", "fingerprint": "9bed1f13b566f760", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e86cc0f12e069db2", "level": "none", "message": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/hooks/useTraderSettings.ts:64"}, "properties": {"repobilityId": "bfa340f28c57c3f7", "scanner": "scanner-primary", "fingerprint": "e86cc0f12e069db2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-37255c0e8b1b248a", "level": "none", "message": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/renderer/src/hooks/useAccountStore.ts:236"}, "properties": {"repobilityId": "a604530b9bb11cea", "scanner": "scanner-primary", "fingerprint": "37255c0e8b1b248a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-16d829bccaf58d9f", "level": "none", "message": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/main/aliasCache.ts:26"}, "properties": {"repobilityId": "d8206aa4ad3d9a81", "scanner": "scanner-primary", "fingerprint": "16d829bccaf58d9f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d6d713f1a960288d", "level": "none", "message": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/main/index.ts:92"}, "properties": {"repobilityId": "ddda5096918cfb45", "scanner": "scanner-primary", "fingerprint": "d6d713f1a960288d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-82b7a91021ed24a2", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scott-agent-trader/src/main/index.ts:127"}, "properties": {"repobilityId": "3a74e10053b4b7cf", "scanner": "scanner-primary", "fingerprint": "82b7a91021ed24a2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-20e39a2eb8c15063", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 scott-agent-trader/src/main/ai/advisor.ts:77"}, "properties": {"repobilityId": "062931a5acde8dde", "scanner": "scanner-primary", "fingerprint": "20e39a2eb8c15063", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8ee64a09ad6708b3", "level": "none", "message": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/main/ib/accounts.ts:142"}, "properties": {"repobilityId": "0d3c645c0686cef9", "scanner": "scanner-primary", "fingerprint": "8ee64a09ad6708b3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b59e339506d39a0c", "level": "none", "message": {"text": "Commented-code block (8 lines) in scott-agent-trader/src/main/ib/options.ts:57"}, "properties": {"repobilityId": "01d7337e6e85cd66", "scanner": "scanner-primary", "fingerprint": "b59e339506d39a0c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a4557916540424bf", "level": "none", "message": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/main/ib/gateway.ts:6"}, "properties": {"repobilityId": "5c78fbb140be24f2", "scanner": "scanner-primary", "fingerprint": "a4557916540424bf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4b7de835bddc358d", "level": "none", "message": {"text": "Commented-code block (5 lines) in scott-agent-trader/src/main/ib/orders.ts:211"}, "properties": {"repobilityId": "99c4360a696e37a1", "scanner": "scanner-primary", "fingerprint": "4b7de835bddc358d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d86d46111186d1a8", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/UserProfileMenu.tsx:182"}, "properties": {"repobilityId": "e9abbaff47c52fe7", "scanner": "scanner-primary", "fingerprint": "d86d46111186d1a8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d810e1a26d59bd37", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/EditNetEquityDialog.tsx:140"}, "properties": {"repobilityId": "0798fa58b0445e18", "scanner": "scanner-primary", "fingerprint": "d810e1a26d59bd37", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b385fba859bfb51e", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/NewOptionDialog.tsx:152"}, "properties": {"repobilityId": "fb35556368b16ce0", "scanner": "scanner-primary", "fingerprint": "b385fba859bfb51e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-adefa1293e748da8", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/EditInitialCostDialog.tsx:121"}, "properties": {"repobilityId": "2d9f28a5e3731ce5", "scanner": "scanner-primary", "fingerprint": "adefa1293e748da8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-a986a2047523baa0", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/GroupTradesDialog.tsx:301"}, "properties": {"repobilityId": "c0674537dba19fd8", "scanner": "scanner-primary", "fingerprint": "a986a2047523baa0", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cdecd2e64b2ecb10", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/GroupOverviewDialog.tsx:120"}, "properties": {"repobilityId": "dbdfc38ff0fa9afc", "scanner": "scanner-primary", "fingerprint": "cdecd2e64b2ecb10", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c422e786eda6fbca", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/EditOptionDialog.tsx:174"}, "properties": {"repobilityId": "4ec15ee6b7403951", "scanner": "scanner-primary", "fingerprint": "c422e786eda6fbca", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-eb47d5342521490a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/DepositsDialog.tsx:124"}, "properties": {"repobilityId": "19eef1946f480447", "scanner": "scanner-primary", "fingerprint": "eb47d5342521490a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-031431d7bc90f06a", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/NewNetEquityDialog.tsx:144"}, "properties": {"repobilityId": "acd9f5fa9868ffd8", "scanner": "scanner-primary", "fingerprint": "031431d7bc90f06a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-100124a1dd21898f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/NewNetEquityDialog.tsx:119"}, "properties": {"repobilityId": "ddeea53fa3d6ff1e", "scanner": "scanner-primary", "fingerprint": "100124a1dd21898f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ddc3daa3284ac535", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/components/EquityPremiumChart.tsx:46"}, "properties": {"repobilityId": "846c7615ff33bfc9", "scanner": "scanner-primary", "fingerprint": "ddc3daa3284ac535", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9856649a35521e66", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/UserStockTradesDialog.tsx:54"}, "properties": {"repobilityId": "abf443c8b8ac20b1", "scanner": "scanner-primary", "fingerprint": "9856649a35521e66", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c227eb72752640e1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/AdminUserDialog.tsx:98"}, "properties": {"repobilityId": "be1ef34291abbe5a", "scanner": "scanner-primary", "fingerprint": "c227eb72752640e1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f52627c31ae95a16", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/components/BatchSetGroupDialog.tsx:80"}, "properties": {"repobilityId": "39a29e1ae24104de", "scanner": "scanner-primary", "fingerprint": "f52627c31ae95a16", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-50bf80a6c8fa4668", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/options/[userId]/page.tsx:114"}, "properties": {"repobilityId": "0ebd0b2d687c698a", "scanner": "scanner-primary", "fingerprint": "50bf80a6c8fa4668", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-cee03e6d4eb4ca06", "level": "none", "message": {"text": "Commented-code block (9 lines) in src/app/api/options/route.ts:27"}, "properties": {"repobilityId": "2ce7d8825925f627", "scanner": "scanner-primary", "fingerprint": "cee03e6d4eb4ca06", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8fd6e91a49ba7c69", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/users/route.ts:438"}, "properties": {"repobilityId": "26a9a8d1dd45f8b8", "scanner": "scanner-primary", "fingerprint": "8fd6e91a49ba7c69", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0490a795252d9495", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/users/[id]/report/route.ts:76"}, "properties": {"repobilityId": "4b0d324ad9c28845", "scanner": "scanner-primary", "fingerprint": "0490a795252d9495", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-82251de303f5c117", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/users/send-report/route.ts:58"}, "properties": {"repobilityId": "51af518273a7731f", "scanner": "scanner-primary", "fingerprint": "82251de303f5c117", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3339cd58dba99158", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/users/send-report/route.ts:96"}, "properties": {"repobilityId": "0447959c05cfde4d", "scanner": "scanner-primary", "fingerprint": "3339cd58dba99158", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e6e45ef79745b476", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/trader-account-groups/route.ts:101"}, "properties": {"repobilityId": "8e21deefad7e35b1", "scanner": "scanner-primary", "fingerprint": "e6e45ef79745b476", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-76abc595ac6f09bd", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/scheduled/auto-update/route.ts:162"}, "properties": {"repobilityId": "d34a6c2367d97b97", "scanner": "scanner-primary", "fingerprint": "76abc595ac6f09bd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-70732420561b9c48", "level": "none", "message": {"text": "Commented-code block (7 lines) in src/app/api/apps/trader/route.ts:8"}, "properties": {"repobilityId": "0836a815ef3779a7", "scanner": "scanner-primary", "fingerprint": "70732420561b9c48", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-34a1774f76736924", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/test-alpha-vantage/route.ts:59"}, "properties": {"repobilityId": "e659d4d50198b36c", "scanner": "scanner-primary", "fingerprint": "34a1774f76736924", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0a664a7d0bc08dfb", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/admin/sync-option-underlying-prices/route.ts:50"}, "properties": {"repobilityId": "043a12c8a6193d15", "scanner": "scanner-primary", "fingerprint": "0a664a7d0bc08dfb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-269ded6c8e4f58ba", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/daily-trades/route.ts:117"}, "properties": {"repobilityId": "62bce336ae6995eb", "scanner": "scanner-primary", "fingerprint": "269ded6c8e4f58ba", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a5148237bade7665", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/daily-trades/holdings/route.ts:40"}, "properties": {"repobilityId": "b43065f2dd415894", "scanner": "scanner-primary", "fingerprint": "a5148237bade7665", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-56818898c6cd0a7a", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/daily-trades/history/route.ts:112"}, "properties": {"repobilityId": "6d91ee05855433e3", "scanner": "scanner-primary", "fingerprint": "56818898c6cd0a7a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-9b828477a2a81b32", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/market-data/backfill/route.ts:235"}, "properties": {"repobilityId": "56cc00c72841342c", "scanner": "scanner-primary", "fingerprint": "9b828477a2a81b32", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b3479407570f1e1d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/market-data/backfill/route.ts:181"}, "properties": {"repobilityId": "12c6603049fa685b", "scanner": "scanner-primary", "fingerprint": "b3479407570f1e1d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-89c0c7e2cd2f280e", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/api/market-data/fill-gaps/route.ts:112"}, "properties": {"repobilityId": "75bb5560e0c9b0ff", "scanner": "scanner-primary", "fingerprint": "89c0c7e2cd2f280e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d75e6712a9d82666", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/api/trader/latest-version/route.ts:8"}, "properties": {"repobilityId": "ccb5f02dda37e2b9", "scanner": "scanner-primary", "fingerprint": "d75e6712a9d82666", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-61d55101e4f5197e", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/app/api/net-equity/import-ib/route.ts:105"}, "properties": {"repobilityId": "4d12a71ca2a62056", "scanner": "scanner-primary", "fingerprint": "61d55101e4f5197e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-99c3fad454779448", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/stocks/page.tsx:149"}, "properties": {"repobilityId": "52ed92b66c966880", "scanner": "scanner-primary", "fingerprint": "99c3fad454779448", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5669d1f1b455daf7", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/admin/users/page.tsx:311"}, "properties": {"repobilityId": "1ea5c62f6ea428bd", "scanner": "scanner-primary", "fingerprint": "5669d1f1b455daf7", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-360dde2066770a17", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/admin/users/page.tsx:697"}, "properties": {"repobilityId": "40cf466b2fa1d174", "scanner": "scanner-primary", "fingerprint": "360dde2066770a17", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-591039e7b349131a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/admin/reports/page.tsx:133"}, "properties": {"repobilityId": "c9ac396ae3ff7268", "scanner": "scanner-primary", "fingerprint": "591039e7b349131a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d15f735d056d23b2", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/daily-trades/page.tsx:374"}, "properties": {"repobilityId": "31dda650b697fd24", "scanner": "scanner-primary", "fingerprint": "d15f735d056d23b2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-48bcb85e36abb333", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/app/trade-groups/page.tsx:319"}, "properties": {"repobilityId": "39c1e0aa8a56dce1", "scanner": "scanner-primary", "fingerprint": "48bcb85e36abb333", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8e11388070a6ab3e", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/trade-groups/page.tsx:178"}, "properties": {"repobilityId": "71e10a9a953799ea", "scanner": "scanner-primary", "fingerprint": "8e11388070a6ab3e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0c531203005f69e8", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/net-equity/page.tsx:120"}, "properties": {"repobilityId": "f4e356b03bb8d8e5", "scanner": "scanner-primary", "fingerprint": "0c531203005f69e8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-ea98f7dc07e07cea", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/app/net-equity/[userId]/page.tsx:118"}, "properties": {"repobilityId": "817556a14228d572", "scanner": "scanner-primary", "fingerprint": "ea98f7dc07e07cea", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-bf591cce55b95e6d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/net-equity/[userId]/page.tsx:127"}, "properties": {"repobilityId": "f64de94cbafe64da", "scanner": "scanner-primary", "fingerprint": "bf591cce55b95e6d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-6ef1d3d934a72c3c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/app/net-equity/[userId]/benchmark/[symbol]/page.tsx:102"}, "properties": {"repobilityId": "f7f567e6f99d2a45", "scanner": "scanner-primary", "fingerprint": "6ef1d3d934a72c3c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2485348386d9d40b", "level": "note", "message": {"text": "Legacy-named symbol `summaryOld` in src/lib/daily-trades-text.ts:327"}, "properties": {"repobilityId": "f8a4427506a95a62", "scanner": "scanner-primary", "fingerprint": "2485348386d9d40b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-6244df851644a8b6", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/lib/daily-trades-text.ts:93"}, "properties": {"repobilityId": "1900e7539f507eb3", "scanner": "scanner-primary", "fingerprint": "6244df851644a8b6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-64001a4d185ea91a", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 src/lib/fred.ts:29"}, "properties": {"repobilityId": "f906e52f31bb2b73", "scanner": "scanner-primary", "fingerprint": "64001a4d185ea91a", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7e125a114f161d55", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/lib/twr.ts:207"}, "properties": {"repobilityId": "ffa7eb777e82fcc2", "scanner": "scanner-primary", "fingerprint": "7e125a114f161d55", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0fa7ce5059edabe6", "level": "none", "message": {"text": "Commented-code block (8 lines) in src/lib/options-metrics.ts:55"}, "properties": {"repobilityId": "c885c19894350913", "scanner": "scanner-primary", "fingerprint": "0fa7ce5059edabe6", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}]}]}