{"version": "2.1.0", "$schema": "https://json.schemastore.org/sarif-2.1.0.json", "runs": [{"tool": {"driver": {"name": "Repobility", "informationUri": "https://repobility.com", "rules": [{"id": "foundry_blueprint_gap", "name": "Foundry mined blueprint gap alignment: ZhangShiCheng3D/MathVerse", "shortDescription": {"text": "Foundry mined blueprint gap alignment: ZhangShiCheng3D/MathVerse"}, "fullDescription": {"text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#9\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#9\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#9\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 9\nGraph consistency label: supported_by_verification_signal\nNodes: 24\nEdges: 41\nNode types: {'pr_file': 7, 'commit': 5, 'link_quality': 4, 'thread': 1, 'repo': "}, "properties": {"scanner": "foundry_dataset", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_assumption_check", "name": "Foundry mined assumption checks: ZhangShiCheng3D/MathVerse", "shortDescription": {"text": "Foundry mined assumption checks: ZhangShiCheng3D/MathVerse"}, "fullDescription": {"text": "Comment chain pattern product: assumption_checks\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#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: ZhangShiCheng3D/MathVerse#8\nRepo: ZhangShiCheng3D/MathVerse\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: 1\nLabels: {'security_auth_secret': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'docs_or_claims': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-bc08743fa10f8480\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \""}, "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: ZhangShiCheng3D/MathVerse", "shortDescription": {"text": "Foundry mined test ci gap after feedback: ZhangShiCheng3D/MathVerse"}, "fullDescription": {"text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#9\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#9\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#9\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 9\nGraph consistency label: supported_by_verification_signal\nNodes: 24\nEdges: 41\nNode types: {'pr_file': 7, 'commit': 5, 'link_quality': 4, 'thread': 1, 'repo': 1, 'comment': 1, 'commen"}, "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: ZhangShiCheng3D/MathVerse", "shortDescription": {"text": "Foundry mined schema ui api mismatch: ZhangShiCheng3D/MathVerse"}, "fullDescription": {"text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#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: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#2\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#2\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 2\nGraph consistency label: supported_by_verification_signal\nNodes: 44\nEdges: 71\nNode types: {'pr_file': 27, 'commit': 5, 'link_quality': 4, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1"}, "properties": {"scanner": "foundry_dataset", "category": "quality", "severity": "high", "confidence": 0.76, "cwe": "", "owasp": ""}}, {"id": "foundry_docs_only_fix", "name": "Foundry mined docs only runtime fix: ZhangShiCheng3D/MathVerse", "shortDescription": {"text": "Foundry mined docs only runtime fix: ZhangShiCheng3D/MathVerse"}, "fullDescription": {"text": "Graph query export: Docs-only response to runtime or integration issue\nQuery id: docs_only_runtime_fix\nQuery type: motif_query\nIntent: Assumption-check examples where docs or claims are not enough proof.\nMotif: docs_only_runtime_fix\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#8\nEvidence:\nGraph motif: Runtime/integration complaint answered mostly with docs or claims\nMotif id: docs_only_runtime_fix\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#8\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#8\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 8\nGraph consistency label: weak_supervision_needs_review\nNodes: 12\nEdges: 16\nNode types: {'link_quality': 3, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'pr_file': 1, 'co"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "high", "confidence": 0.8, "cwe": "", "owasp": ""}}, {"id": "foundry_bad_chain", "name": "Foundry mined bad chains: ZhangShiCheng3D/MathVerse", "shortDescription": {"text": "Foundry mined bad chains: ZhangShiCheng3D/MathVerse"}, "fullDescription": {"text": "Comment chain pattern product: bad_chains\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#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_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: ZhangShiCheng3D/MathVerse#15\nRepo: ZhangShiCheng3D/MathVerse\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 10\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 87\nLabels: {'test_ci_gap': 1, 'mock_placeholder': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'docs_or_claims': 7, 'source_or_other': 6, 'test_or_ci': 23, 'api_or_backend': 25, 'schema_or_data': 1, 'ui_or_frontend': 25}\nExamples:\n[\n  {\n    \"id\": \"github-feedback"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "high", "confidence": 0.84, "cwe": "", "owasp": ""}}, {"id": "foundry_auth_guardrail_gap", "name": "Foundry mined security auth guardrail gaps: ZhangShiCheng3D/MathVerse", "shortDescription": {"text": "Foundry mined security auth guardrail gaps: ZhangShiCheng3D/MathVerse"}, "fullDescription": {"text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#8\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#8\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#8\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 8\nGraph consistency label: weak_supervision_needs_review\nNodes: 12\nEdges: 16\nNode types: {'link_quality': 3, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'pr"}, "properties": {"scanner": "foundry_dataset", "category": "auth", "severity": "critical", "confidence": 0.78, "cwe": "", "owasp": ""}}, {"id": "foundry_fake_real_gap", "name": "Foundry mined mock as real or placeholder: ZhangShiCheng3D/MathVerse", "shortDescription": {"text": "Foundry mined mock as real or placeholder: ZhangShiCheng3D/MathVerse"}, "fullDescription": {"text": "Graph query export: Mock, sample, placeholder, or self-attested behavior treated as real\nQuery id: mock_as_real_or_placeholder\nQuery type: motif_query\nIntent: Hard negatives for fake completeness and missing real data paths.\nMotif: mock_as_real_or_placeholder\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#15\nEvidence:\nGraph motif: Mock, sample, placeholder, or self-attested behavior treated as real\nMotif id: mock_as_real_or_placeholder\nPolarity: bad\nTraining usage: hard_negative\nSeverity: critical\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#15\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#15\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 15\nGraph consistency label: supported_by_high_confidence_link\nNodes: 109\nEdges: 153\nNode types: {'pr_file': 87, 'commit': 7, 'link_q"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "critical", "confidence": 0.82, "cwe": "", "owasp": ""}}, {"id": "scanner-22e57bf1237ac217", "name": "Possibly dead Python function: kb_get", "shortDescription": {"text": "Possibly dead Python function: kb_get"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-14107043f7c52150", "name": "Possibly dead Python function: kb_supported_file_types", "shortDescription": {"text": "Possibly dead Python function: kb_supported_file_types"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0289a7940544c888", "name": "Possibly dead Python function: rest_put", "shortDescription": {"text": "Possibly dead Python function: rest_put"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6715857c03f6f303", "name": "Possibly dead Python function: me", "shortDescription": {"text": "Possibly dead Python function: me"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f7f739dff5bcf75e", "name": "Dockerfile runs as root: deeptutor-patch/Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: deeptutor-patch/Dockerfile"}, "fullDescription": {"text": "No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e48bb916175182b1", "name": "Docker base image uses a mutable or implicit tag: ghcr.io/hkuds/deeptutor:latest", "shortDescription": {"text": "Docker base image uses a mutable or implicit tag: ghcr.io/hkuds/deeptutor:latest"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a8743d51eb4cb2b0", "name": "Dockerfile runs as root: mathverse-api/Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: mathverse-api/Dockerfile"}, "fullDescription": {"text": "No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-154a7b3f17a02e32", "name": "Docker base image is tag-pinned but not digest-pinned: python:3.11-slim", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: python:3.11-slim"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-01f18cc354a7bf1c", "name": "Insecure pattern 'cors_wildcard' in mathverse-api/app/main.py:25", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in mathverse-api/app/main.py:25"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-25e9b2811e1954f5", "name": "Insecure pattern 'weak_hash' in mathverse-api/app/routes/pay.py:95", "shortDescription": {"text": "Insecure pattern 'weak_hash' in mathverse-api/app/routes/pay.py:95"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ae2e0b8800ca43ff", "name": "Insecure pattern 'cors_wildcard' in docs/mathverse-design-review-20260601.html:101", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in docs/mathverse-design-review-20260601.html:101"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4601e3ad3bb28677", "name": "No CI/CD pipelines detected", "shortDescription": {"text": "No CI/CD pipelines detected"}, "fullDescription": {"text": "No GitHub Actions, GitLab CI, or CircleCI configs found. Without CI you can't gate deploys on tests/lints."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-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-2d0c7b7ab8f8aacf", "name": "Critical user flow still appears backed by mock or placeholder data", "shortDescription": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "fullDescription": {"text": "A payment/auth/admin/order/billing-style flow contains mock, fake, TODO, dummy, or placeholder markers in runtime source. In the Fable corpus this is a high-leverage completeness smell: the app can look finished while the money, identity, or tenant flow is still scaffolded."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b9088664ace7f748", "name": "Composite production-readiness gap", "shortDescription": {"text": "Composite production-readiness gap"}, "fullDescription": {"text": "Multiple low-cost hardening controls are missing together: license, ci. Opus verification showed these co-occurring gaps are a better readiness signal than reading each flag in isolation."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-749d4bc1bd66df5f", "name": "Agent instructions exist but release-hardening basics are missing", "shortDescription": {"text": "Agent instructions exist but release-hardening basics are missing"}, "fullDescription": {"text": "AI-coder instruction files were found, but the repo is missing license, ci. Treat this as a contract gap: the agent is guided, but the generated output is not yet guarded by the controls that make it repeatable."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c0e2f17efefa1110", "name": "Commented-code block (6 lines) in deeptutor-patch/patch.py:49", "shortDescription": {"text": "Commented-code block (6 lines) in deeptutor-patch/patch.py:49"}, "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-914f466bdd3e3277", "name": "Commented-code block (5 lines) in mathverse-api/app/config.py:16", "shortDescription": {"text": "Commented-code block (5 lines) in mathverse-api/app/config.py:16"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-64eac67e865bbc98", "name": "Commented-code block (9 lines) in mathverse-api/app/routes/tutor.py:50", "shortDescription": {"text": "Commented-code block (9 lines) in mathverse-api/app/routes/tutor.py: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-ad1f2c0971b89ce0", "name": "10 env vars used in code but missing from .env.example", "shortDescription": {"text": "10 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `DATABASE_URL`, `DEEPTUTOR_PG_BRIDGE_TIMEOUT`, `DEEPTUTOR_PG_DSN`, `DEEPTUTOR_REDIS_URL`, `DEEPTUTOR_ROLE`, `TARO_APP_API_URL`, `TARO_ENV`, `VISION_API_KEY` + 2 more. Add them (with a placeholder/comment) to .env.example so onboarding doesn't break."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2c04133e54348533", "name": "Near-duplicate function bodies in 2 places", "shortDescription": {"text": "Near-duplicate function bodies in 2 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\ndeeptutor-patch/overlay/deeptutor/services/session/postgres_store.py:get_turn, deeptutor-patch/overlay/deeptutor/services/session/postgres_store.py:get_active_turn\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-21ffd7080ada54bb", "name": "FastAPI POST `wechat_mp_login` without auth dependency \u2014 mathverse-api/app/routes/auth.py:144", "shortDescription": {"text": "FastAPI POST `wechat_mp_login` without auth dependency \u2014 mathverse-api/app/routes/auth.py:144"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-ea15e621ccd23e0e", "name": "FastAPI POST `sms_send` without auth dependency \u2014 mathverse-api/app/routes/auth.py:206", "shortDescription": {"text": "FastAPI POST `sms_send` without auth dependency \u2014 mathverse-api/app/routes/auth.py:206"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-1525a3db95bb3a6e", "name": "FastAPI POST `sms_verify` without auth dependency \u2014 mathverse-api/app/routes/auth.py:224", "shortDescription": {"text": "FastAPI POST `sms_verify` without auth dependency \u2014 mathverse-api/app/routes/auth.py:224"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-53c775399db54c28", "name": "FastAPI POST `wechat_callback` without auth dependency \u2014 mathverse-api/app/routes/pay.py:101", "shortDescription": {"text": "FastAPI POST `wechat_callback` without auth dependency \u2014 mathverse-api/app/routes/pay.py:101"}, "fullDescription": {"text": "`@router.post` decorator with no `Depends(get_current_user)` or auth-shaped dependency in its signature. Mutating endpoints should require authentication unless explicitly public."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "high", "confidence": 1.0}}, {"id": "scanner-6f37d06cfa7d74cd", "name": "Dangling fetch: POST /api/solve/deep (mathverse-miniapp/src/stores/solve.ts:133)", "shortDescription": {"text": "Dangling fetch: POST /api/solve/deep (mathverse-miniapp/src/stores/solve.ts:133)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/solve.ts:133` calls `POST /api/solve/deep` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/solve/deep`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b07b989d528eb78a", "name": "Dangling fetch: POST /api/solve/vision (mathverse-miniapp/src/stores/solve.ts:160)", "shortDescription": {"text": "Dangling fetch: POST /api/solve/vision (mathverse-miniapp/src/stores/solve.ts:160)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/solve.ts:160` calls `POST /api/solve/vision` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/solve/vision`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-0506cb2da06c6280", "name": "Dangling fetch: POST /api/solve/step-explain (mathverse-miniapp/src/stores/solve.ts:187)", "shortDescription": {"text": "Dangling fetch: POST /api/solve/step-explain (mathverse-miniapp/src/stores/solve.ts:187)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/solve.ts:187` calls `POST /api/solve/step-explain` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/solve/step-explain`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-208fcdf50b8f65d8", "name": "Dangling fetch: POST /api/me/mistakes (mathverse-miniapp/src/stores/solve.ts:204)", "shortDescription": {"text": "Dangling fetch: POST /api/me/mistakes (mathverse-miniapp/src/stores/solve.ts:204)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/solve.ts:204` calls `POST /api/me/mistakes` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/me/mistakes`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7f6b8e11748d8a7a", "name": "Dangling fetch: GET /api/notebook/list (mathverse-miniapp/src/stores/notebook.ts:30)", "shortDescription": {"text": "Dangling fetch: GET /api/notebook/list (mathverse-miniapp/src/stores/notebook.ts:30)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/notebook.ts:30` calls `GET /api/notebook/list` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/notebook/list`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-64fa4f87f22caa7b", "name": "Dangling fetch: POST /api/notebook/create (mathverse-miniapp/src/stores/notebook.ts:40)", "shortDescription": {"text": "Dangling fetch: POST /api/notebook/create (mathverse-miniapp/src/stores/notebook.ts:40)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/notebook.ts:40` calls `POST /api/notebook/create` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/notebook/create`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-18dd4ec095d313fe", "name": "Dangling fetch: DELETE /api/notebook/${encodeURIComponent(id)} (mathverse-miniapp/src/stores/notebook.ts:50)", "shortDescription": {"text": "Dangling fetch: DELETE /api/notebook/${encodeURIComponent(id)} (mathverse-miniapp/src/stores/notebook.ts:50)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/notebook.ts:50` calls `DELETE /api/notebook/${encodeURIComponent(id)}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/notebook/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-72d686bba41d10a0", "name": "Dangling fetch: POST /api/notebook/${encodeURIComponent(id)}/record (mathverse-miniapp/src/stores/notebook.ts:59)", "shortDescription": {"text": "Dangling fetch: POST /api/notebook/${encodeURIComponent(id)}/record (mathverse-miniapp/src/stores/notebook.ts:59)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/notebook.ts:59` calls `POST /api/notebook/${encodeURIComponent(id)}/record` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/notebook/<p>/record`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-dc1cf021f72ffd2c", "name": "Dangling fetch: POST /api/auth/wechat/mp-login (mathverse-miniapp/src/stores/user.ts:36)", "shortDescription": {"text": "Dangling fetch: POST /api/auth/wechat/mp-login (mathverse-miniapp/src/stores/user.ts:36)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/user.ts:36` calls `POST /api/auth/wechat/mp-login` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/auth/wechat/mp-login`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-9082dd07125f98a6", "name": "Dangling fetch: POST /api/auth/sms/send (mathverse-miniapp/src/stores/user.ts:54)", "shortDescription": {"text": "Dangling fetch: POST /api/auth/sms/send (mathverse-miniapp/src/stores/user.ts:54)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/user.ts:54` calls `POST /api/auth/sms/send` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/auth/sms/send`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-821870c449c7c7ce", "name": "Dangling fetch: POST /api/auth/sms/verify (mathverse-miniapp/src/stores/user.ts:62)", "shortDescription": {"text": "Dangling fetch: POST /api/auth/sms/verify (mathverse-miniapp/src/stores/user.ts:62)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/user.ts:62` calls `POST /api/auth/sms/verify` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/auth/sms/verify`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-29355829e0b7475b", "name": "Dangling fetch: GET /api/auth/me (mathverse-miniapp/src/stores/user.ts:78)", "shortDescription": {"text": "Dangling fetch: GET /api/auth/me (mathverse-miniapp/src/stores/user.ts:78)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/user.ts:78` calls `GET /api/auth/me` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/auth/me`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d3b64fb03dbbd34f", "name": "Dangling fetch: PATCH /api/me/profile (mathverse-miniapp/src/stores/user.ts:86)", "shortDescription": {"text": "Dangling fetch: PATCH /api/me/profile (mathverse-miniapp/src/stores/user.ts:86)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/user.ts:86` calls `PATCH /api/me/profile` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/me/profile`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2c8abc4eaaa5f310", "name": "Dangling fetch: POST /api/solve/visualize (mathverse-miniapp/src/stores/visualize.ts:37)", "shortDescription": {"text": "Dangling fetch: POST /api/solve/visualize (mathverse-miniapp/src/stores/visualize.ts:37)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/visualize.ts:37` calls `POST /api/solve/visualize` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/solve/visualize`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-950b2043e615e316", "name": "Dangling fetch: GET /api/activity/recent (mathverse-miniapp/src/stores/activity.ts:40)", "shortDescription": {"text": "Dangling fetch: GET /api/activity/recent (mathverse-miniapp/src/stores/activity.ts:40)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/activity.ts:40` calls `GET /api/activity/recent` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/activity/recent`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-c1f10f8c54cea540", "name": "Dangling fetch: GET /api/activity/${encodeURIComponent(id)} (mathverse-miniapp/src/stores/activity.ts:50)", "shortDescription": {"text": "Dangling fetch: GET /api/activity/${encodeURIComponent(id)} (mathverse-miniapp/src/stores/activity.ts:50)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/activity.ts:50` calls `GET /api/activity/${encodeURIComponent(id)}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/activity/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3679da6ca10fbb72", "name": "Dangling fetch: GET /api/tutor/capabilities (mathverse-miniapp/src/stores/tutor.ts:150)", "shortDescription": {"text": "Dangling fetch: GET /api/tutor/capabilities (mathverse-miniapp/src/stores/tutor.ts:150)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/tutor.ts:150` calls `GET /api/tutor/capabilities` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/tutor/capabilities`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2ec695fb676be3bc", "name": "Dangling fetch: GET /api/book/list (mathverse-miniapp/src/stores/book.ts:46)", "shortDescription": {"text": "Dangling fetch: GET /api/book/list (mathverse-miniapp/src/stores/book.ts:46)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/book.ts:46` calls `GET /api/book/list` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/book/list`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-5b0fa388190d4e1c", "name": "Dangling fetch: POST /api/book/create (mathverse-miniapp/src/stores/book.ts:56)", "shortDescription": {"text": "Dangling fetch: POST /api/book/create (mathverse-miniapp/src/stores/book.ts:56)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/book.ts:56` calls `POST /api/book/create` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/book/create`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-81c3ae6e6c219d14", "name": "Dangling fetch: POST /api/book/${encodeURIComponent(id)}/generate (mathverse-miniapp/src/stores/book.ts:70)", "shortDescription": {"text": "Dangling fetch: POST /api/book/${encodeURIComponent(id)}/generate (mathverse-miniapp/src/stores/book.ts:70)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/book.ts:70` calls `POST /api/book/${encodeURIComponent(id)}/generate` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/book/<p>/generate`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-82b45fa46f1ae5e4", "name": "Dangling fetch: GET /api/book/${encodeURIComponent(id)} (mathverse-miniapp/src/stores/book.ts:80)", "shortDescription": {"text": "Dangling fetch: GET /api/book/${encodeURIComponent(id)} (mathverse-miniapp/src/stores/book.ts:80)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/book.ts:80` calls `GET /api/book/${encodeURIComponent(id)}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/book/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-a3071ad08ce359ad", "name": "Dangling fetch: DELETE /api/book/${encodeURIComponent(id)} (mathverse-miniapp/src/stores/book.ts:94)", "shortDescription": {"text": "Dangling fetch: DELETE /api/book/${encodeURIComponent(id)} (mathverse-miniapp/src/stores/book.ts:94)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/book.ts:94` calls `DELETE /api/book/${encodeURIComponent(id)}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/book/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-fc3b2f1a58d0c7c2", "name": "Dangling fetch: GET /api/memory/overview (mathverse-miniapp/src/stores/memory.ts:33)", "shortDescription": {"text": "Dangling fetch: GET /api/memory/overview (mathverse-miniapp/src/stores/memory.ts:33)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/memory.ts:33` calls `GET /api/memory/overview` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/memory/overview`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e9df6e0cb85018bf", "name": "Dangling fetch: GET /api/memory/doc/${layer}/${encodeURIComponent(key)} (mathverse-miniapp/src/stores/memory.ts:46)", "shortDescription": {"text": "Dangling fetch: GET /api/memory/doc/${layer}/${encodeURIComponent(key)} (mathverse-miniapp/src/stores/memory.ts:46)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/memory.ts:46` calls `GET /api/memory/doc/${layer}/${encodeURIComponent(key)}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/memory/doc/<p>/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-3402d9e0d91325bb", "name": "Dangling fetch: POST /api/learn/lecture (mathverse-miniapp/src/stores/learn.ts:88)", "shortDescription": {"text": "Dangling fetch: POST /api/learn/lecture (mathverse-miniapp/src/stores/learn.ts:88)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/learn.ts:88` calls `POST /api/learn/lecture` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/learn/lecture`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-f9b65e8f78f52fc5", "name": "Dangling fetch: POST /api/learn/exercise/generate (mathverse-miniapp/src/stores/learn.ts:101)", "shortDescription": {"text": "Dangling fetch: POST /api/learn/exercise/generate (mathverse-miniapp/src/stores/learn.ts:101)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/learn.ts:101` calls `POST /api/learn/exercise/generate` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/learn/exercise/generate`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-578df89867a3dead", "name": "Dangling fetch: POST /api/learn/exercise/grade (mathverse-miniapp/src/stores/learn.ts:117)", "shortDescription": {"text": "Dangling fetch: POST /api/learn/exercise/grade (mathverse-miniapp/src/stores/learn.ts:117)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/learn.ts:117` calls `POST /api/learn/exercise/grade` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/learn/exercise/grade`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-b3d509607ec56ee3", "name": "Dangling fetch: POST /api/me/mistakes (mathverse-miniapp/src/stores/learn.ts:143)", "shortDescription": {"text": "Dangling fetch: POST /api/me/mistakes (mathverse-miniapp/src/stores/learn.ts:143)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/learn.ts:143` calls `POST /api/me/mistakes` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/me/mistakes`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-02eab6f850c63509", "name": "Dangling fetch: GET /api/kb/list (mathverse-miniapp/src/stores/kb.ts:90)", "shortDescription": {"text": "Dangling fetch: GET /api/kb/list (mathverse-miniapp/src/stores/kb.ts:90)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/kb.ts:90` calls `GET /api/kb/list` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/kb/list`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-d7f6777152f7c48f", "name": "Dangling fetch: POST /api/kb/curriculum/${stage}/seed (mathverse-miniapp/src/stores/kb.ts:100)", "shortDescription": {"text": "Dangling fetch: POST /api/kb/curriculum/${stage}/seed (mathverse-miniapp/src/stores/kb.ts:100)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/kb.ts:100` calls `POST /api/kb/curriculum/${stage}/seed` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/kb/curriculum/<p>/seed`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-7fe09da95d0cce1d", "name": "Dangling fetch: DELETE /api/kb/${encodeURIComponent(name)} (mathverse-miniapp/src/stores/kb.ts:110)", "shortDescription": {"text": "Dangling fetch: DELETE /api/kb/${encodeURIComponent(name)} (mathverse-miniapp/src/stores/kb.ts:110)"}, "fullDescription": {"text": "`mathverse-miniapp/src/stores/kb.ts:110` calls `DELETE /api/kb/${encodeURIComponent(name)}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/kb/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-571b11c131e022fc", "name": "Dangling fetch: GET /api/learn/kg/kaoyan (mathverse-miniapp/src/pages/score/index.tsx:30)", "shortDescription": {"text": "Dangling fetch: GET /api/learn/kg/kaoyan (mathverse-miniapp/src/pages/score/index.tsx:30)"}, "fullDescription": {"text": "`mathverse-miniapp/src/pages/score/index.tsx:30` calls `GET /api/learn/kg/kaoyan` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/learn/kg/kaoyan`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-cfc2b7ef7d92578f", "name": "Dangling fetch: GET /api/me/score/estimate?exam_mode=${mode} (mathverse-miniapp/src/pages/score/index.tsx:41)", "shortDescription": {"text": "Dangling fetch: GET /api/me/score/estimate?exam_mode=${mode} (mathverse-miniapp/src/pages/score/index.tsx:41)"}, "fullDescription": {"text": "`mathverse-miniapp/src/pages/score/index.tsx:41` calls `GET /api/me/score/estimate?exam_mode=${mode}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/me/score/estimate`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-970696a7b8e3257d", "name": "Dangling fetch: GET /api/pay/subscription (mathverse-miniapp/src/pages/membership/index.tsx:23)", "shortDescription": {"text": "Dangling fetch: GET /api/pay/subscription (mathverse-miniapp/src/pages/membership/index.tsx:23)"}, "fullDescription": {"text": "`mathverse-miniapp/src/pages/membership/index.tsx:23` calls `GET /api/pay/subscription` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/pay/subscription`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-62318cc1eee84d99", "name": "Dangling fetch: GET /api/pay/plans (mathverse-miniapp/src/pages/membership/index.tsx:26)", "shortDescription": {"text": "Dangling fetch: GET /api/pay/plans (mathverse-miniapp/src/pages/membership/index.tsx:26)"}, "fullDescription": {"text": "`mathverse-miniapp/src/pages/membership/index.tsx:26` calls `GET /api/pay/plans` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/pay/plans`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-bf07f3f5ea1a180a", "name": "Dangling fetch: POST /api/pay/wechat/prepay (mathverse-miniapp/src/pages/membership/index.tsx:33)", "shortDescription": {"text": "Dangling fetch: POST /api/pay/wechat/prepay (mathverse-miniapp/src/pages/membership/index.tsx:33)"}, "fullDescription": {"text": "`mathverse-miniapp/src/pages/membership/index.tsx:33` calls `POST /api/pay/wechat/prepay` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/pay/wechat/prepay`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-abf7732ae288ce55", "name": "Dangling fetch: GET /api/me/progress (mathverse-miniapp/src/pages/me/index.tsx:37)", "shortDescription": {"text": "Dangling fetch: GET /api/me/progress (mathverse-miniapp/src/pages/me/index.tsx:37)"}, "fullDescription": {"text": "`mathverse-miniapp/src/pages/me/index.tsx:37` calls `GET /api/me/progress` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/me/progress`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-cb7b987da2f57b20", "name": "Dangling fetch: GET /api/me/mistakes/review-today (mathverse-miniapp/src/pages/me/index.tsx:38)", "shortDescription": {"text": "Dangling fetch: GET /api/me/mistakes/review-today (mathverse-miniapp/src/pages/me/index.tsx:38)"}, "fullDescription": {"text": "`mathverse-miniapp/src/pages/me/index.tsx:38` calls `GET /api/me/mistakes/review-today` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/me/mistakes/review-today`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-1bdc03d5f7e5903e", "name": "Dangling fetch: GET /api/me/mistakes?${qs} (mathverse-miniapp/src/pages/mistakes/index.tsx:57)", "shortDescription": {"text": "Dangling fetch: GET /api/me/mistakes?${qs} (mathverse-miniapp/src/pages/mistakes/index.tsx:57)"}, "fullDescription": {"text": "`mathverse-miniapp/src/pages/mistakes/index.tsx:57` calls `GET /api/me/mistakes?${qs}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/me/mistakes`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-25cf90f6ea24b1e4", "name": "Dangling fetch: PATCH /api/me/mistakes/${id} (mathverse-miniapp/src/pages/mistakes/index.tsx:71)", "shortDescription": {"text": "Dangling fetch: PATCH /api/me/mistakes/${id} (mathverse-miniapp/src/pages/mistakes/index.tsx:71)"}, "fullDescription": {"text": "`mathverse-miniapp/src/pages/mistakes/index.tsx:71` calls `PATCH /api/me/mistakes/${id}` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/me/mistakes/<p>`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-2bcf35f1f2c96b0f", "name": "Dangling fetch: GET /api/me/plan/today (mathverse-miniapp/src/pages/plan/index.tsx:19)", "shortDescription": {"text": "Dangling fetch: GET /api/me/plan/today (mathverse-miniapp/src/pages/plan/index.tsx:19)"}, "fullDescription": {"text": "`mathverse-miniapp/src/pages/plan/index.tsx:19` calls `GET /api/me/plan/today` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/me/plan/today`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-460f7e9bed9c7242", "name": "Dangling fetch: GET /x (mathverse-miniapp/src/services/api.test.ts:21)", "shortDescription": {"text": "Dangling fetch: GET /x (mathverse-miniapp/src/services/api.test.ts:21)"}, "fullDescription": {"text": "`mathverse-miniapp/src/services/api.test.ts:21` calls `GET /x` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/x`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-87dc81a6015aa5da", "name": "Dangling fetch: GET /auth/sms/send (mathverse-miniapp/src/services/api.test.ts:30)", "shortDescription": {"text": "Dangling fetch: GET /auth/sms/send (mathverse-miniapp/src/services/api.test.ts:30)"}, "fullDescription": {"text": "`mathverse-miniapp/src/services/api.test.ts:30` calls `GET /auth/sms/send` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/auth/sms/send`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-1b59740416f8e374", "name": "Dangling fetch: GET /x (mathverse-miniapp/src/services/api.test.ts:36)", "shortDescription": {"text": "Dangling fetch: GET /x (mathverse-miniapp/src/services/api.test.ts:36)"}, "fullDescription": {"text": "`mathverse-miniapp/src/services/api.test.ts:36` calls `GET /x` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/x`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-e945eeb339c5ad6c", "name": "Dangling fetch: GET /x (mathverse-miniapp/src/services/api.test.ts:41)", "shortDescription": {"text": "Dangling fetch: GET /x (mathverse-miniapp/src/services/api.test.ts:41)"}, "fullDescription": {"text": "`mathverse-miniapp/src/services/api.test.ts:41` calls `GET /x` but no backend route matches that path. This is a runtime 404 waiting to happen.\n\nTool: helper:request\nNormalized path used for matching: `/x`\nIf this points at an external API, prefix it with `https://` so the matcher skips it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "high", "confidence": 1.0}}, {"id": "scanner-4756b4c4da7d2088", "name": "Unused endpoint: GET /api/health", "shortDescription": {"text": "Unused endpoint: GET /api/health"}, "fullDescription": {"text": "`mathverse-api/app/main.py` declares `GET /api/health` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-30ebd8b02a460b20", "name": "Unused endpoint: GET /api/metrics", "shortDescription": {"text": "Unused endpoint: GET /api/metrics"}, "fullDescription": {"text": "`mathverse-api/app/main.py` declares `GET /api/metrics` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d682e1d215955e6a", "name": "Unused endpoint: GET /list", "shortDescription": {"text": "Unused endpoint: GET /list"}, "fullDescription": {"text": "`mathverse-api/app/routes/book.py` declares `GET /list` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-599114e2a4d7d26d", "name": "Unused endpoint: POST /create", "shortDescription": {"text": "Unused endpoint: POST /create"}, "fullDescription": {"text": "`mathverse-api/app/routes/book.py` declares `POST /create` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5e2f17f368b9d98c", "name": "Unused endpoint: POST /{book_id}/generate", "shortDescription": {"text": "Unused endpoint: POST /{book_id}/generate"}, "fullDescription": {"text": "`mathverse-api/app/routes/book.py` declares `POST /{book_id}/generate` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-856d9bddd56b47e1", "name": "Unused endpoint: GET /{book_id}", "shortDescription": {"text": "Unused endpoint: GET /{book_id}"}, "fullDescription": {"text": "`mathverse-api/app/routes/book.py` declares `GET /{book_id}` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5b165df1c46414bb", "name": "Unused endpoint: POST /{book_id}/compile-page", "shortDescription": {"text": "Unused endpoint: POST /{book_id}/compile-page"}, "fullDescription": {"text": "`mathverse-api/app/routes/book.py` declares `POST /{book_id}/compile-page` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6f0ce9000a38b564", "name": "Unused endpoint: DELETE /{book_id}", "shortDescription": {"text": "Unused endpoint: DELETE /{book_id}"}, "fullDescription": {"text": "`mathverse-api/app/routes/book.py` declares `DELETE /{book_id}` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d10e5c556d4bcff6", "name": "Unused endpoint: GET /capabilities", "shortDescription": {"text": "Unused endpoint: GET /capabilities"}, "fullDescription": {"text": "`mathverse-api/app/routes/tutor.py` declares `GET /capabilities` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-955005a6da85f786", "name": "Unused endpoint: GET /recent", "shortDescription": {"text": "Unused endpoint: GET /recent"}, "fullDescription": {"text": "`mathverse-api/app/routes/dashboard.py` declares `GET /recent` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-38092f3b1aae362b", "name": "Unused endpoint: GET /{entry_id}", "shortDescription": {"text": "Unused endpoint: GET /{entry_id}"}, "fullDescription": {"text": "`mathverse-api/app/routes/dashboard.py` declares `GET /{entry_id}` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4cc857accee51b2f", "name": "Unused endpoint: GET /wechat/login", "shortDescription": {"text": "Unused endpoint: GET /wechat/login"}, "fullDescription": {"text": "`mathverse-api/app/routes/auth.py` declares `GET /wechat/login` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f5e9a38860f8d61a", "name": "Unused endpoint: GET /wechat/callback", "shortDescription": {"text": "Unused endpoint: GET /wechat/callback"}, "fullDescription": {"text": "`mathverse-api/app/routes/auth.py` declares `GET /wechat/callback` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6bdaed8ec3832506", "name": "Unused endpoint: POST /wechat/mp-login", "shortDescription": {"text": "Unused endpoint: POST /wechat/mp-login"}, "fullDescription": {"text": "`mathverse-api/app/routes/auth.py` declares `POST /wechat/mp-login` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dd1b19f062726993", "name": "Unused endpoint: POST /sms/send", "shortDescription": {"text": "Unused endpoint: POST /sms/send"}, "fullDescription": {"text": "`mathverse-api/app/routes/auth.py` declares `POST /sms/send` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-130ea2752dd29fd7", "name": "Unused endpoint: POST /sms/verify", "shortDescription": {"text": "Unused endpoint: POST /sms/verify"}, "fullDescription": {"text": "`mathverse-api/app/routes/auth.py` declares `POST /sms/verify` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7ce17d6b092a81ca", "name": "Unused endpoint: POST /refresh", "shortDescription": {"text": "Unused endpoint: POST /refresh"}, "fullDescription": {"text": "`mathverse-api/app/routes/auth.py` declares `POST /refresh` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fd1dc91abf32142d", "name": "Unused endpoint: GET /me", "shortDescription": {"text": "Unused endpoint: GET /me"}, "fullDescription": {"text": "`mathverse-api/app/routes/auth.py` declares `GET /me` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-29945524829d4b0c", "name": "Unused endpoint: POST /{name}/upload", "shortDescription": {"text": "Unused endpoint: POST /{name}/upload"}, "fullDescription": {"text": "`mathverse-api/app/routes/kb.py` declares `POST /{name}/upload` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c562c83979dce866", "name": "Unused endpoint: DELETE /{name}", "shortDescription": {"text": "Unused endpoint: DELETE /{name}"}, "fullDescription": {"text": "`mathverse-api/app/routes/kb.py` declares `DELETE /{name}` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2805420c44d10dc1", "name": "Unused endpoint: POST /{name}/reindex", "shortDescription": {"text": "Unused endpoint: POST /{name}/reindex"}, "fullDescription": {"text": "`mathverse-api/app/routes/kb.py` declares `POST /{name}/reindex` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0359bdf2295d049b", "name": "Unused endpoint: GET /{name}/status", "shortDescription": {"text": "Unused endpoint: GET /{name}/status"}, "fullDescription": {"text": "`mathverse-api/app/routes/kb.py` declares `GET /{name}/status` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a123f3bacae85b56", "name": "Unused endpoint: POST /curriculum/{stage}/seed", "shortDescription": {"text": "Unused endpoint: POST /curriculum/{stage}/seed"}, "fullDescription": {"text": "`mathverse-api/app/routes/kb.py` declares `POST /curriculum/{stage}/seed` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7a009b1a56794f45", "name": "Unused endpoint: POST /", "shortDescription": {"text": "Unused endpoint: POST /"}, "fullDescription": {"text": "`mathverse-api/app/routes/questions.py` declares `POST /` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1f8e48cd338b2831", "name": "Unused endpoint: GET /{question_id}", "shortDescription": {"text": "Unused endpoint: GET /{question_id}"}, "fullDescription": {"text": "`mathverse-api/app/routes/questions.py` declares `GET /{question_id}` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ac2f552bf9d967ce", "name": "Unused endpoint: GET /overview", "shortDescription": {"text": "Unused endpoint: GET /overview"}, "fullDescription": {"text": "`mathverse-api/app/routes/memory.py` declares `GET /overview` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5b8164815c65ad44", "name": "Unused endpoint: GET /doc/{layer}/{key}", "shortDescription": {"text": "Unused endpoint: GET /doc/{layer}/{key}"}, "fullDescription": {"text": "`mathverse-api/app/routes/memory.py` declares `GET /doc/{layer}/{key}` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-619853fd9a80f057", "name": "Unused endpoint: GET /progress", "shortDescription": {"text": "Unused endpoint: GET /progress"}, "fullDescription": {"text": "`mathverse-api/app/routes/me.py` declares `GET /progress` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5a0664bb1477ea77", "name": "Unused endpoint: GET /progress/radar", "shortDescription": {"text": "Unused endpoint: GET /progress/radar"}, "fullDescription": {"text": "`mathverse-api/app/routes/me.py` declares `GET /progress/radar` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-59a1cc885f47e39f", "name": "Unused endpoint: PATCH /profile", "shortDescription": {"text": "Unused endpoint: PATCH /profile"}, "fullDescription": {"text": "`mathverse-api/app/routes/me.py` declares `PATCH /profile` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e2ed0a3cfd4b8dd2", "name": "Unused endpoint: GET /mistakes", "shortDescription": {"text": "Unused endpoint: GET /mistakes"}, "fullDescription": {"text": "`mathverse-api/app/routes/me.py` declares `GET /mistakes` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9135fd752c4021fd", "name": "Unused endpoint: POST /mistakes", "shortDescription": {"text": "Unused endpoint: POST /mistakes"}, "fullDescription": {"text": "`mathverse-api/app/routes/me.py` declares `POST /mistakes` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ee7668be290a650a", "name": "Unused endpoint: PATCH /mistakes/{mistake_id}", "shortDescription": {"text": "Unused endpoint: PATCH /mistakes/{mistake_id}"}, "fullDescription": {"text": "`mathverse-api/app/routes/me.py` declares `PATCH /mistakes/{mistake_id}` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ed88b1d14e8f7fe7", "name": "Unused endpoint: GET /mistakes/review-today", "shortDescription": {"text": "Unused endpoint: GET /mistakes/review-today"}, "fullDescription": {"text": "`mathverse-api/app/routes/me.py` declares `GET /mistakes/review-today` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b48d21595a08cb7b", "name": "Unused endpoint: GET /plan/today", "shortDescription": {"text": "Unused endpoint: GET /plan/today"}, "fullDescription": {"text": "`mathverse-api/app/routes/me.py` declares `GET /plan/today` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4aeb55a814b57c1e", "name": "Unused endpoint: POST /score/estimate", "shortDescription": {"text": "Unused endpoint: POST /score/estimate"}, "fullDescription": {"text": "`mathverse-api/app/routes/me.py` declares `POST /score/estimate` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-71bbf68fcd72ca65", "name": "Unused endpoint: GET /score/estimate", "shortDescription": {"text": "Unused endpoint: GET /score/estimate"}, "fullDescription": {"text": "`mathverse-api/app/routes/me.py` declares `GET /score/estimate` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-47571fd84219ca1d", "name": "Unused endpoint: GET /streak", "shortDescription": {"text": "Unused endpoint: GET /streak"}, "fullDescription": {"text": "`mathverse-api/app/routes/me.py` declares `GET /streak` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4eccb2ce347a8fe6", "name": "Unused endpoint: GET /kg/{stage}", "shortDescription": {"text": "Unused endpoint: GET /kg/{stage}"}, "fullDescription": {"text": "`mathverse-api/app/routes/learn.py` declares `GET /kg/{stage}` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1ab9ed492a438dbf", "name": "Unused endpoint: POST /lecture", "shortDescription": {"text": "Unused endpoint: POST /lecture"}, "fullDescription": {"text": "`mathverse-api/app/routes/learn.py` declares `POST /lecture` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9ee19c00799d62e7", "name": "Unused endpoint: POST /exercise/generate", "shortDescription": {"text": "Unused endpoint: POST /exercise/generate"}, "fullDescription": {"text": "`mathverse-api/app/routes/learn.py` declares `POST /exercise/generate` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-92feeb8d969984c6", "name": "Unused endpoint: POST /exercise/grade", "shortDescription": {"text": "Unused endpoint: POST /exercise/grade"}, "fullDescription": {"text": "`mathverse-api/app/routes/learn.py` declares `POST /exercise/grade` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-16aa64317112f82d", "name": "Unused endpoint: GET /{notebook_id}", "shortDescription": {"text": "Unused endpoint: GET /{notebook_id}"}, "fullDescription": {"text": "`mathverse-api/app/routes/notebook.py` declares `GET /{notebook_id}` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e0cfd8f7528313d9", "name": "Unused endpoint: DELETE /{notebook_id}", "shortDescription": {"text": "Unused endpoint: DELETE /{notebook_id}"}, "fullDescription": {"text": "`mathverse-api/app/routes/notebook.py` declares `DELETE /{notebook_id}` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-77e5204afcb2a7bc", "name": "Unused endpoint: POST /{notebook_id}/record", "shortDescription": {"text": "Unused endpoint: POST /{notebook_id}/record"}, "fullDescription": {"text": "`mathverse-api/app/routes/notebook.py` declares `POST /{notebook_id}/record` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c67ddea3c17528d6", "name": "Unused endpoint: GET /subscription", "shortDescription": {"text": "Unused endpoint: GET /subscription"}, "fullDescription": {"text": "`mathverse-api/app/routes/pay.py` declares `GET /subscription` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f5cae3068724f9d3", "name": "Unused endpoint: GET /plans", "shortDescription": {"text": "Unused endpoint: GET /plans"}, "fullDescription": {"text": "`mathverse-api/app/routes/pay.py` declares `GET /plans` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-45338e7fc4bf8f32", "name": "Unused endpoint: POST /wechat/prepay", "shortDescription": {"text": "Unused endpoint: POST /wechat/prepay"}, "fullDescription": {"text": "`mathverse-api/app/routes/pay.py` declares `POST /wechat/prepay` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2fd4439557b8ccc4", "name": "Unused endpoint: POST /wechat/callback", "shortDescription": {"text": "Unused endpoint: POST /wechat/callback"}, "fullDescription": {"text": "`mathverse-api/app/routes/pay.py` declares `POST /wechat/callback` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}, {"id": "scanner-785072983daedd4c", "name": "Unused endpoint: POST /deep", "shortDescription": {"text": "Unused endpoint: POST /deep"}, "fullDescription": {"text": "`mathverse-api/app/routes/solve.py` declares `POST /deep` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code \u2014 consider removing or documenting who consumes it."}, "properties": {"scanner": "scanner-primary", "layer": "api", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/23626"}, "properties": {"repository": "ZhangShiCheng3D/MathVerse", "repoUrl": "https://github.com/ZhangShiCheng3D/MathVerse", "branch": "main"}, "results": [{"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 447158, "scanner": "foundry_dataset", "fingerprint": "a89a11ed671cb2befabda53d359219c7700a3c881448fa4c965439f8898390a7", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"bug_fix": 1, "test_or_ci": 1, "test_ci_gap": 1, "api_or_backend": 4, "commit_general": 1, "ui_or_frontend": 2, "dependency_or_build": 2, "verification_or_tests": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 41, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 7, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 7, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "comment_chain_touches_file": 7, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 24, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 7, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#9", "issue_number": "9", "quality_tiers": {"high_confidence": 3, "assumption_check": 1}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-00f62222ccb422b3", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 4, "api_or_backend": 16, "ui_or_frontend": 8}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#9\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#9\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#9\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 9\nGraph consistency label: supported_by_verification_signal\nNodes: 24\nEdges: 41\nNode types: {'pr_file': 7, 'commit': 5, 'link_quality': 4, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 7, 'comment_chain_touches_file': 7, 'issue_chain_touches_file': 7, 'comment_chain_links_commit': 5, 'chain_has_link_quality': 4, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'api_or_backend': 4, 'claimed_resolved_with_verification_signal': 3, 'ui_or_frontend': 2, 'dependency_or_build': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'commit_general': 1, 'verification_or_tests': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-880b621d43d0abef", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 447157, "scanner": "foundry_dataset", "fingerprint": "29af1b6c79eb4a5f4473a1530a2e50d2bbf84d9d362f16d0c89af1ee1f4ee436", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"bug_fix": 1, "test_or_ci": 1, "test_ci_gap": 1, "api_or_backend": 3, "verification_or_tests": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 29, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 4, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 4, "thread_has_comment_chain": 1, "comment_chain_links_commit": 2, "comment_chain_touches_file": 4, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 18, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 1, "pr_file": 4, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#7", "issue_number": "7", "quality_tiers": {"assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-619e81c93e5357ea", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 4, "api_or_backend": 12}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#7\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: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#7\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#7\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 7\nGraph consistency label: supported_by_verification_signal\nNodes: 18\nEdges: 29\nNode types: {'pr_file': 4, 'link_quality': 4, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 4, 'comment_chain_touches_file': 4, 'chain_has_link_quality': 4, 'issue_chain_touches_file': 4, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'api_or_backend': 3, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'verification_or_tests': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-4a0e9a2540b31308", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 447156, "scanner": "foundry_dataset", "fingerprint": "aaa12e196d389e0e0b5ba7a9011f82cb15b90b6decba1d84c1f83743ae9b919a", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"bug_fix": 1, "test_or_ci": 1, "test_ci_gap": 1, "api_or_backend": 5, "commit_general": 1, "ui_or_frontend": 41, "dependency_or_build": 1, "verification_or_tests": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 90, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 47, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 1, "comment_chain_links_commit": 4, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 63, "node_types": {"repo": 1, "commit": 4, "thread": 1, "comment": 1, "pr_file": 47, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#6", "issue_number": "6", "quality_tiers": {"assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-132b6efba07663cf", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 4, "api_or_backend": 20, "ui_or_frontend": 164}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#6\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#6\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#6\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 6\nGraph consistency label: supported_by_verification_signal\nNodes: 63\nEdges: 90\nNode types: {'pr_file': 47, 'commit': 4, 'link_quality': 4, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 47, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 4, 'chain_has_link_quality': 4, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 41, 'api_or_backend': 5, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'verification_or_tests': 1, 'commit_general': 1, 'bug_fix': 1, 'dependency_or_build': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-9a4b88822ea5eabc", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 447155, "scanner": "foundry_dataset", "fingerprint": "dc3720de2c143c18f70bb7d779d6c7ebff35aa3ec04d70a07eed3babb29a837e", "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, "api_or_backend": 1, "ui_or_frontend": 1, "api_integration_gap": 1, "mostly follows blueprint": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "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": 23, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 2, "thread_has_comment_chain": 1, "comment_chain_links_commit": 2, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 16, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 1, "pr_file": 2, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#5", "issue_number": "5", "quality_tiers": {"assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-d07c68f1c1bcf4cc", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"api_or_backend": 4, "ui_or_frontend": 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: weak_supervision_needs_review\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#5\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: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#5\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#5\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 5\nGraph consistency label: weak_supervision_needs_review\nNodes: 16\nEdges: 23\nNode types: {'link_quality': 4, 'pr_file': 2, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'chain_has_link_quality': 4, 'thread_touches_file': 2, 'comment_chain_links_commit': 2, 'comment_chain_touches_file': 2, 'issue_chain_touches_file': 2, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'claimed_resolved_unverified': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'ui_or_frontend': 1, 'api_or_backend': 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': 1}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-77c6626322530e5c", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 447154, "scanner": "foundry_dataset", "fingerprint": "23cf8af0841ad997c794ff8cef72a7230b59ee6c41880b192c672a875897fff4", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"test_or_ci": 2, "test_ci_gap": 1, "api_or_backend": 5, "commit_general": 1, "docs_or_claims": 1, "ui_or_frontend": 62, "dependency_or_build": 2, "verification_or_tests": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 114, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 70, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "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": 87, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 70, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#4", "issue_number": "4", "quality_tiers": {"assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-65d3f36f0ca1e972", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 8, "api_or_backend": 20, "docs_or_claims": 4, "ui_or_frontend": 248}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#4\nEvidence:\nGraph motif: Human feedback aligns with blueprint or architecture gaps\nMotif id: blueprint_gap_alignment\nPolarity: mixed\nTraining usage: curriculum_gap\nSeverity: medium\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#4\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#4\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 4\nGraph consistency label: supported_by_verification_signal\nNodes: 87\nEdges: 114\nNode types: {'pr_file': 70, 'commit': 5, 'link_quality': 4, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 70, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 5, 'chain_has_link_quality': 4, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 62, 'api_or_backend': 5, 'claimed_resolved_with_verification_signal': 3, 'test_or_ci': 2, 'dependency_or_build': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'docs_or_claims': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-e4e1b7a43633cd33", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 447153, "scanner": "foundry_dataset", "fingerprint": "b52e56381cdc0ee0126213c6d1b357b13140bbbe96110c3d9ce135b0d80b92bf", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"test_or_ci": 1, "test_ci_gap": 1, "api_or_backend": 1, "commit_general": 1, "docs_or_claims": 1, "ui_or_frontend": 14, "dependency_or_build": 2, "verification_or_tests": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 61, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 17, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "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": 34, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 17, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#3", "issue_number": "3", "quality_tiers": {"assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-723b837724cc0063", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 4, "api_or_backend": 4, "docs_or_claims": 4, "ui_or_frontend": 56}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#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: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#3\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#3\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 3\nGraph consistency label: supported_by_verification_signal\nNodes: 34\nEdges: 61\nNode types: {'pr_file': 17, 'commit': 5, 'link_quality': 4, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 17, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 5, 'chain_has_link_quality': 4, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 14, 'claimed_resolved_with_verification_signal': 3, 'verification_or_tests': 2, 'dependency_or_build': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'docs_or_claims': 1, 'api_or_backend': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-e0a77e976cb85173", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 447152, "scanner": "foundry_dataset", "fingerprint": "22988a697c05eb21d6ce91c79454f5e95cb5d24870f796327fabcff21bf11a46", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"bug_fix": 1, "test_or_ci": 2, "api_or_backend": 3, "commit_general": 1, "docs_or_claims": 6, "source_or_other": 15, "security_or_auth": 1, "verification_or_tests": 3, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 71, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 27, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "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": 44, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 27, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#2", "issue_number": "2", "quality_tiers": {"high_confidence": 3, "assumption_check": 1}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-b5ef54354bad790b", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 8, "api_or_backend": 12, "docs_or_claims": 24, "source_or_other": 60, "security_or_auth": 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: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#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: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#2\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#2\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 2\nGraph consistency label: supported_by_verification_signal\nNodes: 44\nEdges: 71\nNode types: {'pr_file': 27, 'commit': 5, 'link_quality': 4, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 27, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 5, 'chain_has_link_quality': 4, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'source_or_other': 15, 'docs_or_claims': 6, 'api_or_backend': 3, 'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'test_or_ci': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'security_or_auth': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-a308d4631822a391", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 447151, "scanner": "foundry_dataset", "fingerprint": "764d1e7517274666b6ff974a1d04958e32353534c1f4d4bf13aef2fb26e33941", "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_or_ci": 23, "test_ci_gap": 1, "api_or_backend": 25, "commit_general": 1, "docs_or_claims": 7, "schema_or_data": 1, "ui_or_frontend": 25, "source_or_other": 6, "mock_placeholder": 1, "dependency_or_build": 2, "generated_provenance": 2, "mostly follows blueprint": 1, "claimed_resolved_unverified": 4, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 8}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 153, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 87, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 10, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 109, "node_types": {"repo": 1, "commit": 7, "thread": 1, "comment": 2, "pr_file": 87, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#15", "issue_number": "15", "quality_tiers": {"high_confidence": 4, "assumption_check": 1}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-50365d676be59347", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 115, "api_or_backend": 125, "docs_or_claims": 35, "schema_or_data": 5, "ui_or_frontend": 125, "source_or_other": 30}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_high_confidence_link\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#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: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#15\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#15\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 15\nGraph consistency label: supported_by_high_confidence_link\nNodes: 109\nEdges: 153\nNode types: {'pr_file': 87, 'commit': 7, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 87, 'comment_chain_touches_file': 24, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 10, 'chain_has_link_quality': 5, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'api_or_backend': 25, 'ui_or_frontend': 25, 'test_or_ci': 23, 'docs_or_claims': 7, 'source_or_other': 6, 'claimed_resolved_unverified': 4, 'human_reported_issue_then_fix_attempt': 2, 'dependency_or_build': 2, 'generated_provenance': 2, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'mock_placeholder': 1, 'schema_or_data': 1, 'commit_general': 1}\nOutcomes: {'claimed_resolved_unverified': 8}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-6fa903d0480f8337", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 447150, "scanner": "foundry_dataset", "fingerprint": "e948cb3ff0fc433482f74464ce638129f1515f76d29b86dab0a39de6ce81bc94", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"test_or_ci": 2, "test_ci_gap": 1, "ui_or_frontend": 3, "verification_or_tests": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 1, "comment_has_related_commit_context": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"ambiguous_needs_more_evidence": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 32, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 5, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 5, "thread_has_comment_chain": 1, "comment_chain_links_commit": 2, "comment_chain_touches_file": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 19, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 1, "pr_file": 5, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#12", "issue_number": "12", "quality_tiers": {"high_confidence": 3, "assumption_check": 1}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-feccf9c1b5596b18", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 8, "ui_or_frontend": 12}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_high_confidence_link\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#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: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#12\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#12\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 12\nGraph consistency label: supported_by_high_confidence_link\nNodes: 19\nEdges: 32\nNode types: {'pr_file': 5, 'link_quality': 4, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 5, 'comment_chain_touches_file': 5, 'issue_chain_touches_file': 5, 'chain_has_link_quality': 4, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 3, 'ambiguous_needs_more_evidence': 3, 'test_or_ci': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'comment_has_related_commit_context': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-c3fcbc501bb6c840", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 447149, "scanner": "foundry_dataset", "fingerprint": "978a8ebc94c360dbe3d6427d01b559b1373ea80513f16f6b9010ee2951119b0e", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"test_or_ci": 1, "test_ci_gap": 1, "api_or_backend": 1, "commit_general": 1, "ui_or_frontend": 5, "dependency_or_build": 2, "verification_or_tests": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 41, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 7, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 7, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "comment_chain_touches_file": 7, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 24, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 7, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#11", "issue_number": "11", "quality_tiers": {"assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-55f77d827603dd33", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 4, "api_or_backend": 4, "ui_or_frontend": 20}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#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: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#11\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#11\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 11\nGraph consistency label: supported_by_verification_signal\nNodes: 24\nEdges: 41\nNode types: {'pr_file': 7, 'commit': 5, 'link_quality': 4, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 7, 'comment_chain_touches_file': 7, 'issue_chain_touches_file': 7, 'comment_chain_links_commit': 5, 'chain_has_link_quality': 4, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 5, 'claimed_resolved_with_verification_signal': 3, 'verification_or_tests': 2, 'dependency_or_build': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'api_or_backend': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-160dea0128c306c4", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 434677, "scanner": "foundry_dataset", "fingerprint": "f1ad48459e5cd6ab9b59d8e092d9913947808ae7a57f436bf1a7ad0179e4a585", "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": "ZhangShiCheng3D/MathVerse#8", "human_labels": ["docs_or_claims", "security_auth_secret"], "issue_number": "8", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.712, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-2d58ed83f5d4b0f1", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 3, "docs": 2, "tests": 1, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"docs_or_claims": 1}, "linked_commit_count": 2, "helicopter_view_count": 4, "source_artifact_count": 8, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 5, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#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: ZhangShiCheng3D/MathVerse#8\nRepo: ZhangShiCheng3D/MathVerse\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: 1\nLabels: {'security_auth_secret': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'docs_or_claims': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-bc08743fa10f8480\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/ZhangShiCheng3D/MathVerse/pull/8\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: ZhangShiCheng3D/MathVerse\\nAuthor: ZhangShiCheng3D (User)\\nURL: https://github.com/ZhangShiCheng3D/MathVerse/pull/8\\nTitle: docs(claude): \u540c\u6b65\u9879\u76ee\u72b6\u6001\uff08\u5b89\u5353App/\u591a\u5b66\u6bb5KG/\u90e8\u7f72\uff09\\nBody:\\n\u8ba9 CLAUDE.md \u4e0e\u5df2\u4ea4\u4ed8\u72b6\u6001\u4e00\u81f4\u3002\\n\\n- \u65b0\u589e\u300cAndroid app (Capacitor + H5)\u300d\u6bb5\uff1a\u624b\u673a\u77ed\u4fe1\u767b\u5f55\u3001\u4e07\u80fd\u7801 314159\u3001CapacitorHttp \u7ed5 CORS\u3001`npm run app:apk` \u51fa\u5305\u3001\u56fe\u6807\u811a\u672c\u3001\u6a21\u62df\u5668\u7aef\u5230\u7aef\u5df2\u9a8c\u8bc1\\n- \u77e5\u8bc6\u56fe\u8c31\u6bb5\u6539\u4e3a\u591a\u5b66\u6bb5\uff08\u5c0f\u5b66/\u521d\u4e2d/\u9ad8\u4e2d + \u5171\u4eab `kg.py` + \u96f7\u8fbe\u56fe\u6309\u5b66\u6bb5\u805a\u5408\uff09\\n- \u4fee\u6b63\uff1a\u670d\u52a1\u5668\u5206\u652f `master`\u3001redeploy \u7528 `--no-deps`\u3001\u6d4b\u8bd5\u6570 79\u219291\\n- Still open \u66f4\u65b0\uff1aSMS \u5ba1\u6279\u3001\u5b89\u5353\u7b7e\u540d\u4e0a\u67b6\u5f52\u7c7b\u4e3a user-only\\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-51342760c981f955\",\n    \"filename\": \"CLAUDE.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 12,\n    \"deletions\": 5,\n    \"changes\": 17,\n    \"blob_url\": \"https://github.com/ZhangShiCheng3D/MathVerse/blob/bb043fc3a8860e3ce67cba28511284f32bdcf204/CLAUDE.md\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-60519463a6eb4330\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: ZhangShiCheng3D/MathVerse\nGraph label: source_backed_multi_signal_graph\nNodes: 16\nEdges: 24\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 2, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 5, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"ci\": 3, \"designs\": 1, \"docs\": 2, \"schemas\": 1, \"tests\": 1}\nHelicopter views: {\"graphs\": 2, \"schemas\": 2}\nBundle labels: {\"source_backed_fake_real_v\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "comment-chain-pattern-assumption_checks-629cbd36e22b61e2", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 434676, "scanner": "foundry_dataset", "fingerprint": "9564fa2ee91a5cb048d01cc25477a31159f83bfbecce2eb6e269032cca13a733", "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": "ZhangShiCheng3D/MathVerse#5", "human_labels": ["api_integration_gap", "api_or_backend", "ui_or_frontend"], "issue_number": "5", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.72, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-b05e0a51af8cd75d", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 3, "docs": 2, "tests": 1, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"api_or_backend": 1, "ui_or_frontend": 1}, "linked_commit_count": 2, "helicopter_view_count": 4, "source_artifact_count": 8, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_weak_supervision", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 5, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#5\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_weak_supervision, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: ZhangShiCheng3D/MathVerse#5\nRepo: ZhangShiCheng3D/MathVerse\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: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 1, 'api_or_backend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-c5e24a7e3986b2f1\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/ZhangShiCheng3D/MathVerse/pull/5\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: ZhangShiCheng3D/MathVerse\\nAuthor: ZhangShiCheng3D (User)\\nURL: https://github.com/ZhangShiCheng3D/MathVerse/pull/5\\nTitle: fix(miniapp): \u4fee\u590d 429 \u8bef\u62a5\\\"\u989d\u5ea6\u7528\u5149\\\" + \u91cd\u505a\u767b\u5f55\u9875\\nBody:\\n\u771f\u5b9e\u4f7f\u7528 APK \u53cd\u9988\u7684\u4e24\u4e2a\u95ee\u9898\u3002\\n\\n## 1. \u53d1\u9001\u9a8c\u8bc1\u7801\u663e\u793a\\\"\u989d\u5ea6\u7528\u5149\u4e86\\\"\\n`api.ts` \u628a**\u6240\u6709 429** \u786c\u7f16\u7801\u6210 `\u4eca\u65e5\u514d\u8d39\u989d\u5ea6\u5df2\u7528\u5b8c`\uff0c\u800c\u77ed\u4fe1 60s \u9650\u9891\u4e5f\u8fd4\u56de 429 \u2192 \u88ab\u9519\u8bef\u8986\u76d6\u3002\u6539\u7528\u670d\u52a1\u7aef `detail`\uff1a\\n- \u77ed\u4fe1\u9650\u9891 \u2192 `\u9a8c\u8bc1\u7801\u53d1\u9001\u8fc7\u4e8e\u9891\u7e41\uff0c\u8bf7\u7a0d\u540e\u518d\u8bd5`\\n- \u89e3\u9898\u914d\u989d \u2192 `\u4eca\u65e5\u514d\u8d39\u989d\u5ea6(N\u9898)\u5df2\u7528\u5b8c\uff0c\u8bf7\u5347\u7ea7\u4f1a\u5458`\uff08\u66f4\u51c6\uff09\\n\\n## 2. \u767b\u5f55\u754c\u9762\u4e0d\u5408\u7406\\n\u6574\u9875\u91cd\u505a\uff1a\\n- \u5f03\u7528 Taro `Button`\uff08h5 \u9ed8\u8ba4\u7070\u5e95/\u8fb9\u6846\u662f\\\"\u4e11\\\"\u7684\u6839\u6e90\uff09\u2192 **View \u81ea\u7ed8\u6309\u94ae**\\n- \u7edf\u4e00\u5b57\u6bb5 50px \u9ad8\u5ea6\u3001\u5706\u89d2\u3001\u6807\u7b7e\u3001\u7559\u767d\uff1b\u767b\u5f55\u7981\u7528\u6001\u6709\u89c6\u89c9\u53cd\u9988\\n- dev \u6a21\u5f0f\u300c\u83b7\u53d6\u9a8c\u8bc1\u7801\u300d**\u81ea\u52a8\u56de\u586b**\u9a8c\u8bc1\u7801\\n- \u9876\u90e8\u9192\u76ee\u63d0\u793a\uff1a\u6d4b\u8bd5\u671f\u95f4\u9a8c\u8bc1\u7801\u586b `314159` \u76f4\u63a5\u767b\u5f55\uff08\u5df2\u6807\u6ce8 real SMS \u4e0a\u7ebf\u540e\u79fb\u9664\uff09\\n\\n## \u9a8c\u8bc1\\n`npm run build:h5` \u6210\u529f\uff1b\u5df2\u91cd\u6253 APK \u5b9e\u6d4b\u3002\\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-66c4ce940219538e\",\n    \"filename\": \"mathverse-miniapp/src/pages/login/index.tsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 57,\n    \"deletions\": 30,\n    \"changes\": 87,\n    \"blob_url\": \"https://github.com/ZhangShiCheng3D/MathVerse/blob/6fc73f7d15c4c54eb2b3ae9a4fff3743f5412c0f/mathverse-miniapp%2Fsrc%2Fpages%2Flogin%2Findex.tsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-b04e9c6f4de62f2e\",\n    \"filename\": \"mathverse-miniapp/src/services/api.ts\",\n    \"label\": \"api_or_backend\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 1,\n    \"changes\": 4,\n    \"blob_url\": \"https://github.com/ZhangShiCheng3D/MathVerse/blob/6fc73f7d15c4c54eb2b3ae9a4fff3743f5412c0f/mathverse-miniapp%2Fsrc%2Fservices%2Fapi.ts\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-b39f6c6c5c07192a\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: ZhangShiCheng3D/MathVerse\nGraph label: source_backed_multi_signal_graph\nNodes: 16\nEdges: 24\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicop\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "comment-chain-pattern-assumption_checks-2d083bf130a263c0", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 434675, "scanner": "foundry_dataset", "fingerprint": "17e5a758473d8a59be6c6862604e5f781f7cc14a4add951f9642872206c9ed43", "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": "ZhangShiCheng3D/MathVerse#12", "human_labels": ["test_ci_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "12", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.825, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-da1c169f79b04a9f", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 3, "docs": 2, "tests": 1, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 5, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 2, "ui_or_frontend": 3}, "linked_commit_count": 2, "helicopter_view_count": 4, "source_artifact_count": 8, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 5, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#12\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: ZhangShiCheng3D/MathVerse#12\nRepo: ZhangShiCheng3D/MathVerse\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 2\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 5\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 3, 'test_or_ci': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-cc05a36f6f622930\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/ZhangShiCheng3D/MathVerse/pull/12\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: ZhangShiCheng3D/MathVerse\\nAuthor: ZhangShiCheng3D (User)\\nURL: https://github.com/ZhangShiCheng3D/MathVerse/pull/12\\nTitle: test(miniapp): \u524d\u7aef\u6d4b\u8bd5\u57fa\u5efa\uff08Vitest\uff09+ api/store \u6d4b\u8bd5\\nBody:\\n\u540e\u7aef 95 \u6d4b\u8bd5\u3001\u524d\u7aef 0\u2014\u2014\u8865\u524d\u7aef\u6d4b\u8bd5\u57fa\u5efa\u3002\\n\\n- Vitest + jsdom\uff0c`npm run test`\\n- `api.test`\uff1a200 / **429\uff08\u7528\u670d\u52a1\u7aef detail\uff0c\u975e\u786c\u7f16\u7801\\\"\u989d\u5ea6\u7528\u5149\\\"\uff09** / 400 / \u7f51\u7edc\u9519\u8bef\u6620\u5c04\u2014\u2014\u8986\u76d6\u4e4b\u524d PR #5 \u4fee\u7684 429 \u8bef\u62a5 bug\\n- `user.test`\uff1a`loginByPhone` \u843d user+isLogin\u3001`updateProfile` \u66f4\u65b0\u672c\u5730\\n\\n**6 passed**\u3002\u7eaf\u6d4b\u8bd5\uff0c\u65e0\u8fd0\u884c\u65f6\u6539\u52a8\u3002\\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-053a2c5e88566d01\",\n    \"filename\": \"mathverse-miniapp/package-lock.json\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 1656,\n    \"deletions\": 268,\n    \"changes\": 1924,\n    \"blob_url\": \"https://github.com/ZhangShiCheng3D/MathVerse/blob/30c4eb7e7e9a44e1a7c8dc1c371cf3290b3e1bbf/mathverse-miniapp%2Fpackage-lock.json\"\n  },\n  {\n    \"id\": \"github-pr-file-file-8f505bb39e9175e8\",\n    \"filename\": \"mathverse-miniapp/package.json\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 4,\n    \"deletions\": 1,\n    \"changes\": 5,\n    \"blob_url\": \"https://github.com/ZhangShiCheng3D/MathVerse/blob/30c4eb7e7e9a44e1a7c8dc1c371cf3290b3e1bbf/mathverse-miniapp%2Fpackage.json\"\n  },\n  {\n    \"id\": \"github-pr-file-file-e6468edf147cb62a\",\n    \"filename\": \"mathverse-miniapp/src/services/api.test.ts\",\n    \"label\": \"test_or_ci\",\n    \"status\": \"added\",\n    \"additions\": 43,\n    \"deletions\": 0,\n    \"changes\": 43,\n    \"blob_url\": \"https://github.com/ZhangShiCheng3D/MathVerse/blob/30c4eb7e7e9a44e1a7c8dc1c371cf3290b3e1bbf/mathverse-miniapp%2Fsrc%2Fservices%2Fapi.test.ts\"\n  },\n  {\n    \"id\": \"github-pr-file-file-7764aa56b44443d2\",\n    \"filename\": \"mathverse-miniapp/src/stores/user.test.ts\",\n    \"label\": \"test_or_ci\",\n    \"s\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "comment-chain-pattern-assumption_checks-18d6dc4d1c04760a", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 434674, "scanner": "foundry_dataset", "fingerprint": "db75449854e15c9e0ea8bc43784e005424ebf31aa623585fee4ba1932b4d00b4", "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": "ZhangShiCheng3D/MathVerse#10", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "10", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.807, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-5e0b811672ae6ab4", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 3, "docs": 2, "tests": 1, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 1}, "linked_commit_count": 2, "helicopter_view_count": 4, "source_artifact_count": 8, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_high_confidence"], "linked_ci_commit_count": 0, "verification_artifact_count": 5, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: assumption_checks\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#10\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: ZhangShiCheng3D/MathVerse#10\nRepo: ZhangShiCheng3D/MathVerse\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: 1\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-15539cea49d6edf6\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/ZhangShiCheng3D/MathVerse/pull/10\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: ZhangShiCheng3D/MathVerse\\nAuthor: ZhangShiCheng3D (User)\\nURL: https://github.com/ZhangShiCheng3D/MathVerse/pull/10\\nTitle: fix(solve): h5 connectSocket \u9700 await\uff08\u6d41\u5f0f\u5b89\u5353\u4fee\u590d\uff09\\nBody:\\nPR #9 \u7684\u6d41\u5f0f\u5728 h5/\u5b89\u5353\u4e0a\u62a5 `task.onOpen is not a function`\u2014\u2014Taro **h5 \u7684 `Taro.connectSocket` \u8fd4\u56de `Promise<SocketTask>`**\uff08weapp \u624d\u540c\u6b65\u8fd4\u56de\uff09\uff0c\u6211\u76f4\u63a5 `.onOpen()` \u4e86\uff1b\u4e14\u9519\u8bef\u629b\u5728 Promise executor \u91cc\uff0c\u6ca1\u8d70\u5230 `onError/onClose` \u7684 POST \u56de\u9000\u3002\\n\\n\u6a21\u62df\u5668\u5b9e\u6d4b\u53d1\u73b0\u5e76\u4fee\u590d\uff1a\\n- async IIFE \u91cc `await connectSocket`\uff08\u517c\u5bb9 weapp \u540c\u6b65\u8fd4\u56de\uff09\\n- \u7ed1\u5b9a\u524d\u6821\u9a8c `task.onMessage`\uff0c\u5426\u5219\u56de\u9000 POST\\n- \u4efb\u4f55\u8fde\u63a5\u5f02\u5e38 \u2192 \u900f\u660e\u56de\u9000 POST\\n\\n**\u6a21\u62df\u5668\u9a8c\u8bc1**\uff1a`8x9` \u2192 \u7b54\u6848 72\uff0c\u7ed3\u6784\u5316\u7ed3\u679c\u6b63\u5e38\u6e32\u67d3\uff08\u6b65\u9aa4/\u52a0\u5165\u9519\u9898\u672c\uff09\u3002\u524d\u7aef\u6784\u5efa\u901a\u8fc7\u3002\u7eaf\u524d\u7aef\u4fee\u590d\uff0c\u540e\u7aef\u65e0\u6539\u52a8\u3002\\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-1061c08beab2ec22\",\n    \"filename\": \"mathverse-miniapp/src/stores/solve.ts\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 47,\n    \"deletions\": 39,\n    \"changes\": 86,\n    \"blob_url\": \"https://github.com/ZhangShiCheng3D/MathVerse/blob/fed970e524550ebdb50169707ee54c9140dce2bf/mathverse-miniapp%2Fsrc%2Fstores%2Fsolve.ts\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-bd9a694816cf1702\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: ZhangShiCheng3D/MathVerse\nGraph label: source_backed_multi_signal_graph\nNodes: 16\nEdges: 24\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 2, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 5, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact fa\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "comment-chain-pattern-assumption_checks-0510866d008673d6", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 457977, "scanner": "foundry_dataset", "fingerprint": "7148c15cff1044a130927c68934c29891bbd4cdb8c5e43513fb75be45aa6387b", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 1, "test_or_ci": 1, "test_ci_gap": 1, "api_or_backend": 4, "commit_general": 1, "ui_or_frontend": 2, "dependency_or_build": 2, "verification_or_tests": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 41, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 7, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 7, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "comment_chain_touches_file": 7, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 24, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 7, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#9", "issue_number": "9", "quality_tiers": {"high_confidence": 3, "assumption_check": 1}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-ba5daa2fc6fbc56c", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 4, "api_or_backend": 16, "ui_or_frontend": 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: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#9\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#9\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#9\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 9\nGraph consistency label: supported_by_verification_signal\nNodes: 24\nEdges: 41\nNode types: {'pr_file': 7, 'commit': 5, 'link_quality': 4, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 7, 'comment_chain_touches_file': 7, 'issue_chain_touches_file': 7, 'comment_chain_links_commit': 5, 'chain_has_link_quality': 4, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'api_or_backend': 4, 'claimed_resolved_with_verification_signal': 3, 'ui_or_frontend': 2, 'dependency_or_build': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'commit_general': 1, 'verification_or_tests': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-672140b4edf17151", "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": "ZhangShiCheng3D/MathVerse", "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: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 457976, "scanner": "foundry_dataset", "fingerprint": "e1823d4904e67d323cfd0b1ed83b26f8939f5911b0e6673a80a1368b1d6dae7d", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 1, "test_or_ci": 1, "test_ci_gap": 1, "api_or_backend": 3, "verification_or_tests": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_with_verification_signal": 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": 4, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 4, "thread_has_comment_chain": 1, "comment_chain_links_commit": 2, "comment_chain_touches_file": 4, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 18, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 1, "pr_file": 4, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#7", "issue_number": "7", "quality_tiers": {"assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-92fc51aa04d1e216", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 4, "api_or_backend": 12}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#7\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: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#7\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#7\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 7\nGraph consistency label: supported_by_verification_signal\nNodes: 18\nEdges: 29\nNode types: {'pr_file': 4, 'link_quality': 4, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 4, 'comment_chain_touches_file': 4, 'chain_has_link_quality': 4, 'issue_chain_touches_file': 4, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'api_or_backend': 3, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'verification_or_tests': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- 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/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-4816c828667bc6ef", "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": "ZhangShiCheng3D/MathVerse", "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: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 457975, "scanner": "foundry_dataset", "fingerprint": "5bdeffd036156274ed1de3c901a508656c1e82fee7f92db5c0835b4b0e8722aa", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"bug_fix": 1, "test_or_ci": 1, "test_ci_gap": 1, "api_or_backend": 5, "commit_general": 1, "ui_or_frontend": 41, "dependency_or_build": 1, "verification_or_tests": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 90, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 47, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 1, "comment_chain_links_commit": 4, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 63, "node_types": {"repo": 1, "commit": 4, "thread": 1, "comment": 1, "pr_file": 47, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#6", "issue_number": "6", "quality_tiers": {"assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-da78cd8c19230691", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 4, "api_or_backend": 20, "ui_or_frontend": 164}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#6\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#6\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#6\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 6\nGraph consistency label: supported_by_verification_signal\nNodes: 63\nEdges: 90\nNode types: {'pr_file': 47, 'commit': 4, 'link_quality': 4, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 47, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 4, 'chain_has_link_quality': 4, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 41, 'api_or_backend': 5, 'claimed_resolved_with_verification_signal': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'verification_or_tests': 1, 'commit_general': 1, 'bug_fix': 1, 'dependency_or_build': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- 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/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-d738c189acde8449", "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": "ZhangShiCheng3D/MathVerse", "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: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 457974, "scanner": "foundry_dataset", "fingerprint": "2f960f52682c30a874f36a897348a95ec3dbefbb7ed6a9a49647319f56bbf095", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"test_or_ci": 2, "test_ci_gap": 1, "api_or_backend": 5, "commit_general": 1, "docs_or_claims": 1, "ui_or_frontend": 62, "dependency_or_build": 2, "verification_or_tests": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 114, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 70, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "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": 87, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 70, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#4", "issue_number": "4", "quality_tiers": {"assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-6a77c66256efe91d", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 8, "api_or_backend": 20, "docs_or_claims": 4, "ui_or_frontend": 248}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#4\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: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#4\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#4\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 4\nGraph consistency label: supported_by_verification_signal\nNodes: 87\nEdges: 114\nNode types: {'pr_file': 70, 'commit': 5, 'link_quality': 4, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 70, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 5, 'chain_has_link_quality': 4, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 62, 'api_or_backend': 5, 'claimed_resolved_with_verification_signal': 3, 'test_or_ci': 2, 'dependency_or_build': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'docs_or_claims': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- 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/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-c1a9cc9718f33a9f", "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": "ZhangShiCheng3D/MathVerse", "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: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 457973, "scanner": "foundry_dataset", "fingerprint": "dea20ea0a223a9d2b770e464d27b410c773700d4ae1a32934fc67ca07daf11f6", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"test_or_ci": 1, "test_ci_gap": 1, "api_or_backend": 1, "commit_general": 1, "docs_or_claims": 1, "ui_or_frontend": 14, "dependency_or_build": 2, "verification_or_tests": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 61, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 17, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "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": 34, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 17, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#3", "issue_number": "3", "quality_tiers": {"assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-692949b112021536", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 4, "api_or_backend": 4, "docs_or_claims": 4, "ui_or_frontend": 56}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#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: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#3\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#3\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 3\nGraph consistency label: supported_by_verification_signal\nNodes: 34\nEdges: 61\nNode types: {'pr_file': 17, 'commit': 5, 'link_quality': 4, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 17, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 5, 'chain_has_link_quality': 4, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 14, 'claimed_resolved_with_verification_signal': 3, 'verification_or_tests': 2, 'dependency_or_build': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'docs_or_claims': 1, 'api_or_backend': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- 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/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-e01816117da3c1fa", "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": "ZhangShiCheng3D/MathVerse", "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: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 457972, "scanner": "foundry_dataset", "fingerprint": "1f526db20c101c59df82667fb41e98eb16e7e3dda0ab3bf8cfec49c971d5c4a7", "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_or_ci": 23, "test_ci_gap": 1, "api_or_backend": 25, "commit_general": 1, "docs_or_claims": 7, "schema_or_data": 1, "ui_or_frontend": 25, "source_or_other": 6, "mock_placeholder": 1, "dependency_or_build": 2, "generated_provenance": 2, "mostly follows blueprint": 1, "claimed_resolved_unverified": 4, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 8}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 153, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 87, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 10, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 109, "node_types": {"repo": 1, "commit": 7, "thread": 1, "comment": 2, "pr_file": 87, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#15", "issue_number": "15", "quality_tiers": {"high_confidence": 4, "assumption_check": 1}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-d88593ccd4786d83", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 115, "api_or_backend": 125, "docs_or_claims": 35, "schema_or_data": 5, "ui_or_frontend": 125, "source_or_other": 30}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#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: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#15\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#15\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 15\nGraph consistency label: supported_by_high_confidence_link\nNodes: 109\nEdges: 153\nNode types: {'pr_file': 87, 'commit': 7, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 87, 'comment_chain_touches_file': 24, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 10, 'chain_has_link_quality': 5, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'api_or_backend': 25, 'ui_or_frontend': 25, 'test_or_ci': 23, 'docs_or_claims': 7, 'source_or_other': 6, 'claimed_resolved_unverified': 4, 'human_reported_issue_then_fix_attempt': 2, 'dependency_or_build': 2, 'generated_provenance': 2, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'mock_placeholder': 1, 'schema_or_data': 1, 'commit_general': 1}\nOutcomes: {'claimed_resolved_unverified': 8}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-5793db0fb5e0cd64", "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": "ZhangShiCheng3D/MathVerse", "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: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 457971, "scanner": "foundry_dataset", "fingerprint": "48e61af866c469173147084983158b16baee3cbbe40592da1bbaab0fe733121f", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"test_or_ci": 2, "test_ci_gap": 1, "ui_or_frontend": 3, "verification_or_tests": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 3, "blueprint_human_gap_disagreement": 1, "comment_has_related_commit_context": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"ambiguous_needs_more_evidence": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 32, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 5, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 5, "thread_has_comment_chain": 1, "comment_chain_links_commit": 2, "comment_chain_touches_file": 5, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 19, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 1, "pr_file": 5, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#12", "issue_number": "12", "quality_tiers": {"high_confidence": 3, "assumption_check": 1}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-5cc19fbc0d3d435b", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 8, "ui_or_frontend": 12}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#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: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#12\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#12\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 12\nGraph consistency label: supported_by_high_confidence_link\nNodes: 19\nEdges: 32\nNode types: {'pr_file': 5, 'link_quality': 4, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 5, 'comment_chain_touches_file': 5, 'issue_chain_touches_file': 5, 'chain_has_link_quality': 4, '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, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 3, 'ambiguous_needs_more_evidence': 3, 'test_or_ci': 2, 'verification_or_tests': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'comment_has_related_commit_context': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- Turn human feedback into regression tests and CI gates.\n- Penalize fixes that do not add or exercise verification for affected workflows.\nAssumption checks:\n- Did the fix add tests for the exact complaint?\n- Does CI run those tests, or is verification only implied?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-ea79f24af4bc5f33", "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": "ZhangShiCheng3D/MathVerse", "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: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 457970, "scanner": "foundry_dataset", "fingerprint": "9f5474691bccf68f1c9b7b512d06d430c178f5d49dc388bbbd974aea1a18b799", "category": "testing", "severity": "high", "confidence": 0.78, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Feedback exposes missing tests or CI", "intent": "Hard negatives for feedback/fix chains without adequate guardrails.", "labels": {"test_or_ci": 1, "test_ci_gap": 1, "api_or_backend": 1, "commit_general": 1, "ui_or_frontend": 5, "dependency_or_build": 2, "verification_or_tests": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 41, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 7, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 7, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "comment_chain_touches_file": 7, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 24, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 7, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#11", "issue_number": "11", "quality_tiers": {"assumption_check": 1, "weak_supervision": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-1e180a8d45140099", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 4, "api_or_backend": 4, "ui_or_frontend": 20}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#11\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#11\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#11\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 11\nGraph consistency label: supported_by_verification_signal\nNodes: 24\nEdges: 41\nNode types: {'pr_file': 7, 'commit': 5, 'link_quality': 4, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 7, 'comment_chain_touches_file': 7, 'issue_chain_touches_file': 7, 'comment_chain_links_commit': 5, 'chain_has_link_quality': 4, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'ui_or_frontend': 5, 'claimed_resolved_with_verification_signal': 3, 'verification_or_tests': 2, 'dependency_or_build': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'api_or_backend': 1, 'test_or_ci': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- 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/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-090835c8c7887914", "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": "ZhangShiCheng3D/MathVerse", "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: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 452909, "scanner": "foundry_dataset", "fingerprint": "5d4330882b5b5fee1fdb7a42c97dbebae361a30977a08f405735b80e1a3cfff8", "category": "quality", "severity": "high", "confidence": 0.76, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Schema, UI, and API mismatch", "intent": "Assumption-check examples for data-path consistency across layers.", "labels": {"bug_fix": 1, "test_or_ci": 2, "api_or_backend": 3, "commit_general": 1, "docs_or_claims": 6, "source_or_other": 15, "security_or_auth": 1, "verification_or_tests": 3, "data_schema_persistence": 1, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "schema_ui_api_mismatch", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 71, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 27, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 4, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "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": 44, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 27, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 4, "comment_chain": 1, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#2", "issue_number": "2", "quality_tiers": {"high_confidence": 3, "assumption_check": 1}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-1a8f1b04e214cf07", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 8, "api_or_backend": 12, "docs_or_claims": 24, "source_or_other": 60, "security_or_auth": 4}}, "text": "Graph query export: Schema, UI, and API mismatch\nQuery id: schema_ui_api_mismatch\nQuery type: motif_query\nIntent: Assumption-check examples for data-path consistency across layers.\nMotif: schema_ui_api_mismatch\nTraining usage: assumption_check\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#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: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#2\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#2\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 2\nGraph consistency label: supported_by_verification_signal\nNodes: 44\nEdges: 71\nNode types: {'pr_file': 27, 'commit': 5, 'link_quality': 4, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 27, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 5, 'chain_has_link_quality': 4, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'source_or_other': 15, 'docs_or_claims': 6, 'api_or_backend': 3, 'verification_or_tests': 3, 'claimed_resolved_with_verification_signal': 3, 'test_or_ci': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'data_schema_persistence': 1, 'security_or_auth': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'bug_fix': 1, 'commit_general': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- Create schema-to-API-to-UI consistency tasks with migrations and tests.\n- Teach models to verify persistence, route contracts, and UI state together.\nAssumption checks:\n- Do schema changes have matching API and UI handling?\n- Are migrations and tests present for the data path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-4c676b1997dd95fd", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/schema_ui_api_mismatch", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_docs_only_fix", "level": "error", "message": {"text": "Foundry mined docs only runtime fix: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 450622, "scanner": "foundry_dataset", "fingerprint": "ff4d48b3c929b9b3bb10598f1d8d76afe1e66f65a932e0eb0cc88ae69200ed09", "category": "practices", "severity": "high", "confidence": 0.8, "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": "Docs-only response to runtime or integration issue", "intent": "Assumption-check examples where docs or claims are not enough proof.", "labels": {"docs_or_claims": 1, "security_or_secrets": 1, "generated_provenance": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "docs_only_runtime_fix", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "docs_only_runtime_fix", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 16, "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_links_commit": 2, "comment_chain_touches_file": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 12, "node_types": {"repo": 1, "commit": 2, "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": "ZhangShiCheng3D/MathVerse#8", "issue_number": "8", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-10db0af1fb9682e9", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"docs_or_claims": 4}}, "text": "Graph query export: Docs-only response to runtime or integration issue\nQuery id: docs_only_runtime_fix\nQuery type: motif_query\nIntent: Assumption-check examples where docs or claims are not enough proof.\nMotif: docs_only_runtime_fix\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#8\nEvidence:\nGraph motif: Runtime/integration complaint answered mostly with docs or claims\nMotif id: docs_only_runtime_fix\nPolarity: bad\nTraining usage: assumption_check\nSeverity: high\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#8\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#8\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 8\nGraph consistency label: weak_supervision_needs_review\nNodes: 12\nEdges: 16\nNode types: {'link_quality': 3, 'commit': 2, '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, 'comment_chain_links_commit': 2, '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: {'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'docs_or_claims': 1, 'human_reported_issue_then_fix_attempt': 1, 'generated_provenance': 1, 'security_or_secrets': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Train models to reject docs-only fixes for runtime, integration, data, or security failures.\n- Add paired examples where the correct fix changes executable paths and adds verification.\nAssumption checks:\n- Do changed files include executable code or only documentation/claims?\n- Does the complaint require runtime behavior that docs cannot prove?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-4bdefd389b24f057", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/docs_only_runtime_fix/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/docs_only_runtime_fix", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 442087, "scanner": "foundry_dataset", "fingerprint": "33d429efad05746b2ef42c1ce5c81b42f2d99325328904d896198224f72ec019", "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": "ZhangShiCheng3D/MathVerse#15", "human_labels": ["api_or_backend", "docs_or_claims", "mock_placeholder", "schema_or_data", "source_or_other", "test_ci_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "15", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.892, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-ff377263a5422ea8", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 3, "docs": 2, "tests": 1, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 87, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"test_or_ci": 23, "api_or_backend": 25, "docs_or_claims": 7, "schema_or_data": 1, "ui_or_frontend": 25, "source_or_other": 6}, "linked_commit_count": 10, "helicopter_view_count": 4, "source_artifact_count": 8, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 0, "verification_artifact_count": 5, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: bad_chains\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#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_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: ZhangShiCheng3D/MathVerse#15\nRepo: ZhangShiCheng3D/MathVerse\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 2\nLinked commit count: 10\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 87\nLabels: {'test_ci_gap': 1, 'mock_placeholder': 1}\nPolarities: {'bad': 2}\nChanged file labels: {'docs_or_claims': 7, 'source_or_other': 6, 'test_or_ci': 23, 'api_or_backend': 25, 'schema_or_data': 1, 'ui_or_frontend': 25}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-15fc28237f198613\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/ZhangShiCheng3D/MathVerse/pull/15\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: ZhangShiCheng3D/MathVerse\\nAuthor: ZhangShiCheng3D (User)\\nURL: https://github.com/ZhangShiCheng3D/MathVerse/pull/15\\nTitle: \u5168\u9762\u63a5\u5165 DeepTutor \u5168\u90e8\u80fd\u529b + \u9ad8\u5e76\u53d1\u8865\u4e01\u5ba1\u8ba1\u4fee\u590d\\nBody:\\n## \u6982\u8ff0\\n\u4e24\u4ef6\u4e8b\uff1a(1) \u628a MathVerse \u4ece\u300c\u53ea\u8c03\u7528 DeepTutor \u7684 `/api/v1/chat` \u4e00\u4e2a\u7aef\u70b9\u300d**\u7cfb\u7edf\u6027\u6269\u5c55\u5230\u4f7f\u7528\u5176\u5168\u90e8\u80fd\u529b**\uff08\u9762\u5411 App\uff09\uff1b(2) **\u5ba1\u8ba1 PR #2 \u7684\u9ad8\u5e76\u53d1\u6539\u9020**\u5e76\u4fee\u590d\u4f1a\u5728\u771f\u5b9e\u5e76\u53d1/\u591a\u526f\u672c\u4e0b\u66b4\u9732\u7684 bug\u3002\\n\\n## \u2460 feat(deeptutor) \u2014 \u5168\u80fd\u529b\u63a5\u5165 (`a6d01d3`)\\n- \u65b0\u589e\u5206\u5c42\u5ba2\u6237\u7aef\u5305 `app/services/deeptutor/`\uff08transport / **turn = unified_ws turn runtime** / rest / tenancy / kb_seed\uff09\\n- **P1** \u62cd\u7167/\u5224\u9898/\u8ffd\u95ee/\u51fa\u76f8\u4f3c\u9898\u6539\u8d70 DeepTutor\uff1b\u5220\u9664 `vision.py`\uff08DeepSeek \u4ec5\u7559\u7194\u65ad\u964d\u7ea7\uff09\\n- **P2** RAG \u77e5\u8bc6\u5e93 `/api/kb/*`\uff08\u9759\u6001\u77e5\u8bc6\u56fe\u8c31\u79cd\u5b50\u5e93\uff09+ RAG \u53c2\u6570\u8d2f\u7a7f solve/quick/\u6d41\u5f0f\\n- **P3** \u667a\u80fd\u4f53\u5bfc\u5e08 `WS /ws/tutor`\uff08\u53cc\u5411\u4ee3\u7406 turn runtime\uff0c\u542b `ask_user` \u4ea4\u4e92\u56de\u8def\uff09\\n- **P4** \u51e0\u4f55\u53ef\u89c6\u5316 `/api/solve/visualize`\uff08\u56fe\u2192GeoGebra\uff09\\n- **P5** \u7b14\u8bb0\u672c `/api/notebook/*` + `DtResource` \u5f52\u5c5e\u8868\\n- \u5bfc\u5e08\u5386\u53f2 `/api/activity/*`\u3001\u5f15\u64ce\u8bb0\u5fc6\u53ea\u8bfb `/api/memory/*`\uff08\u9ed8\u8ba4\u5173\u95ed\uff09\u3001AI \u6559\u6750 `/api/book/*`\\n- \u524d\u7aef\u65b0\u589e tutor/visualize/kb/notebook/activity/memory/book \u9875 + store + \u9996\u9875\u5165\u53e3\\n\\n**\u79df\u6237\u9694\u79bb (C2)**\uff1aMathVerse \u547d\u540d\u8d44\u6e90\u7528 `mv_{uid}_` \u524d\u7f00\uff1bDeepTutor \u670d\u52a1\u7aef\u751f\u6210 id \u7684\u8d44\u6e90\u7528 `DtResource` \u5f52\u5c5e\u8868\u3002\\n\\n## \u2461 fix(deeptutor-hc) \u2014 \u9ad8\u5e76\u53d1\u5ba1\u8ba1\u4fee\u590d (`0aea899`)\\n- **F1[\u9ad8]** \u975e\u5c5e\u4e3b\u526f\u672c\u8bef\u6740\u300c\u6d3b\u7740\u4f46\u5b89\u9759\u300d\u7684 turn \u2192 \u52a0 owner \u5fc3\u8df3\uff08`touch_turn` + `_run_turn` \u6bcf30s bump\uff09\\n- **F2[\u4e2d]** s\"\n  },\n  {\n    \"id\": \"github-feedback-comment-edab1289029632f2\",\n    \"kind\": \"issue_comment\",\n    \"label\": \"mock_placeholder\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/ZhangShiCheng3D/MathVerse/pull/15#issuecomment-4610776914\",\n    \"text\": \"GitHub feedback: mock_placeholder\\nPolarity: bad\\nKind: issue_comment\\nRepo: ZhangShiCheng3D/MathVerse\\nAuthor: ZhangShiCheng3D (User)\\nURL: https://github.com/ZhangShiCheng3D/MathVerse/pull/15#issuecomment-4610776914\\nTitle: \\nBody:\\n## \u8ffd\u52a0\u63d0\u4ea4 `2f51d3e` \u2014 \u80fd\u529b\u5229\u7528\u5ea6\u5ba1\u67e5 P1 \u4fee\u590d\\n\\n\u7cfb\u7edf\u6027\u5ba1\u67e5 DeepTutor \u80fd\u529b\u5229\u7528\u5ea6\u540e\uff0c\u89e3\u51b3\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "comment-chain-pattern-bad_chains-2df72b3356f70718", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 442086, "scanner": "foundry_dataset", "fingerprint": "f2a7df676fc94f85e96b4cdf32b15f944c3d984e50daa5351d7d2b654f453148", "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": "ZhangShiCheng3D/MathVerse#14", "human_labels": ["agent_instruction_gap", "docs_or_claims"], "issue_number": "14", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "self_attested_unverified", "source_backed": true, "max_confidence": 0.855, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-aa09fa03ceb6cb4e", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 3, "docs": 2, "tests": 1, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"docs_or_claims": 1}, "linked_commit_count": 3, "helicopter_view_count": 4, "source_artifact_count": 8, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_high_confidence"], "linked_ci_commit_count": 0, "verification_artifact_count": 5, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: bad_chains\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#14\nOutcome: self_attested_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: ZhangShiCheng3D/MathVerse#14\nRepo: ZhangShiCheng3D/MathVerse\nThread label: thread_has_human_issue_and_fix_context\nOutcome: self_attested_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 1\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'docs_or_claims': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-fe2309106073874d\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/ZhangShiCheng3D/MathVerse/pull/14\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: ZhangShiCheng3D/MathVerse\\nAuthor: ZhangShiCheng3D (User)\\nURL: https://github.com/ZhangShiCheng3D/MathVerse/pull/14\\nTitle: docs(claude): /init \u8be6\u7ec6\u8bb0\u5f55\u9879\u76ee\u8fdb\u5ea6\uff08PR #1\u201313 \u8d26\u672c\uff09\\nBody:\\n\u628a CLAUDE.md \u7684\u8fc7\u65f6\u8fdb\u5ea6\u6bb5\u91cd\u5199\u4e3a\u5b8c\u6574 PR #1\u201313 \u8d26\u672c\uff0c\u4fee\u6b63 generate_quiz/lecture \u5df2\u8d70 WS \u7684\u8fc7\u65f6\u63cf\u8ff0\uff0c\u67b6\u6784\u8865\u6d41\u5f0f/\u6863\u6848/SMS/\u524d\u7aef\u9875\u9762\uff0c\u547d\u4ee4\u8865 test/app:apk\u3002\u5269\u4f59\u9879\u5f52\u7c7b\u4e3a\u5916\u90e8\u51ed\u8bc1\u963b\u585e\u3002\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-c1de343d9ddf5a1f\",\n    \"filename\": \"CLAUDE.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 35,\n    \"deletions\": 23,\n    \"changes\": 58,\n    \"blob_url\": \"https://github.com/ZhangShiCheng3D/MathVerse/blob/b940644a7fb0453a9ee1c3ed0c7dd7e5437ff6ae/CLAUDE.md\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-499fbe06740495a4\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: ZhangShiCheng3D/MathVerse\nGraph label: source_backed_multi_signal_graph\nNodes: 16\nEdges: 24\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 2, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 5, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"ci\": 3, \"designs\": 1, \"docs\": 2, \"schemas\": 1, \"tests\": 1}\nHelicopter views: {\"graphs\": 2, \"schemas\": 2}\nBundle labels: {\"source_backed_fake_real_verification_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "comment-chain-pattern-bad_chains-c5151d91ca8e5ff7", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 442085, "scanner": "foundry_dataset", "fingerprint": "43b72ab0b279f7511af6c91d591b4ca13a4e92f78e5c714af97e6b904993e1a4", "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": "ZhangShiCheng3D/MathVerse#13", "human_labels": ["agent_instruction_gap", "docs_or_claims"], "issue_number": "13", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "self_attested_unverified", "source_backed": true, "max_confidence": 0.876, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-cd51f6ca1fd88967", "helicopter_views": {"graphs": 2, "schemas": 2}, "artifact_families": {"ci": 3, "docs": 2, "tests": 1, "designs": 1, "schemas": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"docs_or_claims": 1}, "linked_commit_count": 5, "helicopter_view_count": 4, "source_artifact_count": 8, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_high_confidence"], "linked_ci_commit_count": 0, "verification_artifact_count": 5, "design_schema_api_artifact_count": 2}, "text": "Comment chain pattern product: bad_chains\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#13\nOutcome: self_attested_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: ZhangShiCheng3D/MathVerse#13\nRepo: ZhangShiCheng3D/MathVerse\nThread label: thread_has_human_issue_and_fix_context\nOutcome: self_attested_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 1\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'docs_or_claims': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-405753f7da5faa65\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/ZhangShiCheng3D/MathVerse/pull/13\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: ZhangShiCheng3D/MathVerse\\nAuthor: ZhangShiCheng3D (User)\\nURL: https://github.com/ZhangShiCheng3D/MathVerse/pull/13\\nTitle: docs(claude): \u540c\u6b65\u6d41\u5f0f/\u6863\u6848/\u524d\u7aef\u6d4b\u8bd5\u5df2\u5b8c\u6210\u9879\\nBody:\\n\u6587\u6863\u4e0e\u73b0\u5b9e\u5bf9\u9f50\uff1a\u6d41\u5f0f\u89e3\u9898\u3001\u591a\u5b66\u6bb5KG\u3001\u6863\u6848\u8bbe\u7f6e\u3001\u54c1\u724c\u56fe\u6807\u3001\u524d\u7aef\u6d4b\u8bd5\u57fa\u5efa\u5747\u5df2\u5b8c\u6210\u5e76\u90e8\u7f72\u3002\u6d4b\u8bd5 91\u219295\u3002\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-34dc882ef5da0beb\",\n    \"filename\": \"CLAUDE.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 4,\n    \"deletions\": 2,\n    \"changes\": 6,\n    \"blob_url\": \"https://github.com/ZhangShiCheng3D/MathVerse/blob/2458497cd3ea616084f501a6130a7db6f0c96bea/CLAUDE.md\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-4bb2232f27ab2dc8\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: ZhangShiCheng3D/MathVerse\nGraph label: source_backed_multi_signal_graph\nNodes: 16\nEdges: 24\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 4, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 2, \"artifact_supports_design_schema_api\": 1, \"artifact_supports_verification\": 5, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_graphs_helicopter_view\": 2, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"ci\": 3, \"designs\": 1, \"docs\": 2, \"schemas\": 1, \"tests\": 1}\nHelicopter views: {\"graphs\": 2, \"schemas\": 2}\nBundle labels: {\"source_backed_fake_real_verification_bundle\": 1}\nCo-occurrence labels: {\"fake_real_data_plus_verification_gap\": 1}", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "comment-chain-pattern-bad_chains-88068a526858ac90", "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": "ZhangShiCheng3D/MathVerse", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 455019, "scanner": "foundry_dataset", "fingerprint": "ca32f887aff90bb0fdd3b05f229321c91ce64549fa19676e38da67ced14d1ca3", "category": "auth", "severity": "critical", "confidence": 0.78, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Security/auth changes without enough guardrails", "intent": "Assumption-check security/auth examples requiring stronger tests or CI.", "labels": {"docs_or_claims": 1, "security_or_secrets": 1, "generated_provenance": 1, "security_auth_secret": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 16, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "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_links_commit": 2, "comment_chain_touches_file": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 12, "node_types": {"repo": 1, "commit": 2, "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": "ZhangShiCheng3D/MathVerse#8", "issue_number": "8", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-9dbd76d956e11a0c", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"docs_or_claims": 4}}, "text": "Graph query export: Security/auth changes without enough guardrails\nQuery id: security_auth_guardrail_gaps\nQuery type: motif_query\nIntent: Assumption-check security/auth examples requiring stronger tests or CI.\nMotif: security_auth_without_guardrails\nTraining usage: assumption_check\nGraph gold label: weak_supervision_needs_review\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#8\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#8\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#8\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 8\nGraph consistency label: weak_supervision_needs_review\nNodes: 12\nEdges: 16\nNode types: {'link_quality': 3, 'commit': 2, '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, 'comment_chain_links_commit': 2, '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: {'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'docs_or_claims': 1, 'human_reported_issue_then_fix_attempt': 1, 'generated_provenance': 1, 'security_or_secrets': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Train auth boundary repair with tests, permission matrices, and secret-handling checks.\n- Keep risky auth changes separate from ordinary bug-fix examples.\nAssumption checks:\n- Are auth/permission paths covered by tests?\n- Are secrets, CORS, or access rules verified rather than summarized?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-ae46a279739b04bb", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/security_auth_guardrail_gaps/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/security_auth_guardrail_gaps", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_fake_real_gap", "level": "error", "message": {"text": "Foundry mined mock as real or placeholder: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 451161, "scanner": "foundry_dataset", "fingerprint": "15dc3ddb8620ce72ff8da90c52b8d769ba99dba3e01b655040e5ab57e7d5dbfa", "category": "practices", "severity": "critical", "confidence": 0.82, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Mock, sample, placeholder, or self-attested behavior treated as real", "intent": "Hard negatives for fake completeness and missing real data paths.", "labels": {"bug_fix": 2, "test_or_ci": 23, "test_ci_gap": 1, "api_or_backend": 25, "commit_general": 1, "docs_or_claims": 7, "schema_or_data": 1, "ui_or_frontend": 25, "source_or_other": 6, "mock_placeholder": 1, "dependency_or_build": 2, "generated_provenance": 2, "mostly follows blueprint": 1, "claimed_resolved_unverified": 4, "issue_or_pull_request_thread": 1, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 2, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"claimed_resolved_unverified": 8}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 153, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 2, "thread_has_comment": 2, "thread_touches_file": 87, "alignment_uses_comment": 1, "alignment_uses_finding": 1, "chain_has_link_quality": 5, "comment_aligns_finding": 1, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 2, "comment_chain_links_commit": 10, "comment_chain_touches_file": 24, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 2}, "node_count": 109, "node_types": {"repo": 1, "commit": 7, "thread": 1, "comment": 2, "pr_file": 87, "alignment": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 5, "comment_chain": 2, "blueprint_finding": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#15", "issue_number": "15", "quality_tiers": {"high_confidence": 4, "assumption_check": 1}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-5d0b4d5c1a9f8f27", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 115, "api_or_backend": 125, "docs_or_claims": 35, "schema_or_data": 5, "ui_or_frontend": 125, "source_or_other": 30}}, "text": "Graph query export: Mock, sample, placeholder, or self-attested behavior treated as real\nQuery id: mock_as_real_or_placeholder\nQuery type: motif_query\nIntent: Hard negatives for fake completeness and missing real data paths.\nMotif: mock_as_real_or_placeholder\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#15\nEvidence:\nGraph motif: Mock, sample, placeholder, or self-attested behavior treated as real\nMotif id: mock_as_real_or_placeholder\nPolarity: bad\nTraining usage: hard_negative\nSeverity: critical\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#15\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#15\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 15\nGraph consistency label: supported_by_high_confidence_link\nNodes: 109\nEdges: 153\nNode types: {'pr_file': 87, 'commit': 7, 'link_quality': 5, 'comment': 2, 'comment_chain': 2, 'thread': 1, 'repo': 1, 'issue_chain': 1, 'fix_outcome': 1, 'alignment': 1, 'blueprint_finding': 1}\nEdge types: {'thread_touches_file': 87, 'comment_chain_touches_file': 24, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 10, 'chain_has_link_quality': 5, 'thread_has_comment': 2, 'thread_has_comment_chain': 2, 'comment_has_chain': 2, 'issue_chain_has_comment_chain': 2, 'repo_has_thread': 1, 'thread_has_issue_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1, 'alignment_uses_comment': 1, 'alignment_uses_finding': 1, 'comment_aligns_finding': 1}\nLabels: {'api_or_backend': 25, 'ui_or_frontend': 25, 'test_or_ci': 23, 'docs_or_claims': 7, 'source_or_other': 6, 'claimed_resolved_unverified': 4, 'human_reported_issue_then_fix_attempt': 2, 'dependency_or_build': 2, 'generated_provenance': 2, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'mock_placeholder': 1, 'schema_or_data': 1, 'commit_general': 1}\nOutcomes: {'claimed_resolved_unverified': 8}\nQuality tiers: {'high_confidence': 4, 'assumption_check': 1}\nCI labels: {}\nCurriculum targets:\n- Train real-data plumbing and mock-removal tasks from source to UI.\n- Use as hard negatives for dashboards or apps claiming real runs without provenance.\nAssumption checks:\n- Is user-visible behavior backed by real storage/API/CI artifacts?\n- Are placeholders, sample data, or generated claims still in a production path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-6ba176e0a2c737a8", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/mock_as_real_or_placeholder/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_fake_real_gap", "level": "error", "message": {"text": "Foundry mined mock as real or placeholder: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 451160, "scanner": "foundry_dataset", "fingerprint": "009ac4f056a23e0d6d2d7230eaf93207e5033e4cb8fcff9dedf48a691cb94999", "category": "practices", "severity": "critical", "confidence": 0.82, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Mock, sample, placeholder, or self-attested behavior treated as real", "intent": "Hard negatives for fake completeness and missing real data paths.", "labels": {"docs_or_claims": 1, "generated_provenance": 3, "agent_instruction_gap": 1, "self_attested_unverified": 3, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"self_attested_unverified": 6}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 17, "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_links_commit": 3, "comment_chain_touches_file": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 13, "node_types": {"repo": 1, "commit": 3, "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": "ZhangShiCheng3D/MathVerse#14", "issue_number": "14", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-2b7828d73f837f10", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"docs_or_claims": 4}}, "text": "Graph query export: Mock, sample, placeholder, or self-attested behavior treated as real\nQuery id: mock_as_real_or_placeholder\nQuery type: motif_query\nIntent: Hard negatives for fake completeness and missing real data paths.\nMotif: mock_as_real_or_placeholder\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#14\nEvidence:\nGraph motif: Mock, sample, placeholder, or self-attested behavior treated as real\nMotif id: mock_as_real_or_placeholder\nPolarity: bad\nTraining usage: hard_negative\nSeverity: critical\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#14\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#14\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 14\nGraph consistency label: supported_by_high_confidence_link\nNodes: 13\nEdges: 17\nNode types: {'commit': 3, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'pr_file': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 3, '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: {'generated_provenance': 3, 'self_attested_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'docs_or_claims': 1, 'self_attested_or_generated_fix_unverified': 1}\nOutcomes: {'self_attested_unverified': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {}\nCurriculum targets:\n- Train real-data plumbing and mock-removal tasks from source to UI.\n- Use as hard negatives for dashboards or apps claiming real runs without provenance.\nAssumption checks:\n- Is user-visible behavior backed by real storage/API/CI artifacts?\n- Are placeholders, sample data, or generated claims still in a production path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-28ad789b8ee830f1", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/mock_as_real_or_placeholder/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_fake_real_gap", "level": "error", "message": {"text": "Foundry mined mock as real or placeholder: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 451159, "scanner": "foundry_dataset", "fingerprint": "fc4ba535bcf24d024dae23f123e3571c1fd022774e9162fb537efbdcb712e14f", "category": "practices", "severity": "critical", "confidence": 0.82, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Mock, sample, placeholder, or self-attested behavior treated as real", "intent": "Hard negatives for fake completeness and missing real data paths.", "labels": {"docs_or_claims": 1, "generated_provenance": 5, "agent_instruction_gap": 1, "self_attested_unverified": 3, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "self_attested_or_generated_fix_unverified": 1}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"self_attested_unverified": 6}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 19, "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_links_commit": 5, "comment_chain_touches_file": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 15, "node_types": {"repo": 1, "commit": 5, "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": "ZhangShiCheng3D/MathVerse#13", "issue_number": "13", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-fffbc8328a05a8e7", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"docs_or_claims": 4}}, "text": "Graph query export: Mock, sample, placeholder, or self-attested behavior treated as real\nQuery id: mock_as_real_or_placeholder\nQuery type: motif_query\nIntent: Hard negatives for fake completeness and missing real data paths.\nMotif: mock_as_real_or_placeholder\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#13\nEvidence:\nGraph motif: Mock, sample, placeholder, or self-attested behavior treated as real\nMotif id: mock_as_real_or_placeholder\nPolarity: bad\nTraining usage: hard_negative\nSeverity: critical\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#13\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#13\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 13\nGraph consistency label: supported_by_high_confidence_link\nNodes: 15\nEdges: 19\nNode types: {'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'pr_file': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 5, 'chain_has_link_quality': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_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: {'generated_provenance': 5, 'self_attested_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'docs_or_claims': 1, 'self_attested_or_generated_fix_unverified': 1}\nOutcomes: {'self_attested_unverified': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {}\nCurriculum targets:\n- Train real-data plumbing and mock-removal tasks from source to UI.\n- Use as hard negatives for dashboards or apps claiming real runs without provenance.\nAssumption checks:\n- Is user-visible behavior backed by real storage/API/CI artifacts?\n- Are placeholders, sample data, or generated claims still in a production path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-190d4a6c134c7182", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/mock_as_real_or_placeholder/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_fake_real_gap", "level": "error", "message": {"text": "Foundry mined mock as real or placeholder: ZhangShiCheng3D/MathVerse"}, "properties": {"repobilityId": 451158, "scanner": "foundry_dataset", "fingerprint": "a9b688c6708775c1fdd95d3de614886553c0a7493328f5630938eb505b91f1f2", "category": "practices", "severity": "critical", "confidence": 0.82, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Mock, sample, placeholder, or self-attested behavior treated as real", "intent": "Hard negatives for fake completeness and missing real data paths.", "labels": {"bug_fix": 1, "test_or_ci": 8, "api_or_backend": 26, "commit_general": 1, "docs_or_claims": 5, "schema_or_data": 1, "ui_or_frontend": 2, "source_or_other": 1, "mock_placeholder": 1, "generated_provenance": 2, "verification_or_tests": 1, "issue_or_pull_request_thread": 1, "thread_has_human_issue_and_fix_context": 2, "claimed_resolved_with_verification_signal": 3, "human_reported_issue_then_verified_fix_attempt": 1}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"claimed_resolved_with_verification_signal": 6}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 83, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 43, "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_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": 43, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "ZhangShiCheng3D/MathVerse#1", "issue_number": "1", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "ZhangShiCheng3D/MathVerse", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-db6656cc54517c74", "graph_gold_label": "supported_by_verification_signal", "changed_file_labels": {"test_or_ci": 32, "api_or_backend": 104, "docs_or_claims": 20, "schema_or_data": 4, "ui_or_frontend": 8, "source_or_other": 4}}, "text": "Graph query export: Mock, sample, placeholder, or self-attested behavior treated as real\nQuery id: mock_as_real_or_placeholder\nQuery type: motif_query\nIntent: Hard negatives for fake completeness and missing real data paths.\nMotif: mock_as_real_or_placeholder\nTraining usage: hard_negative\nGraph gold label: supported_by_verification_signal\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#1\nEvidence:\nGraph motif: Mock, sample, placeholder, or self-attested behavior treated as real\nMotif id: mock_as_real_or_placeholder\nPolarity: bad\nTraining usage: hard_negative\nSeverity: critical\nRepo: ZhangShiCheng3D/MathVerse\nThread: ZhangShiCheng3D/MathVerse#1\nGraph gold label: supported_by_verification_signal\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: ZhangShiCheng3D/MathVerse#1\nRepo: ZhangShiCheng3D/MathVerse\nIssue/PR number: 1\nGraph consistency label: supported_by_verification_signal\nNodes: 57\nEdges: 83\nNode types: {'pr_file': 43, 'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 43, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 5, 'chain_has_link_quality': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'api_or_backend': 26, 'test_or_ci': 8, 'docs_or_claims': 5, 'claimed_resolved_with_verification_signal': 3, 'ui_or_frontend': 2, 'generated_provenance': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'source_or_other': 1, 'schema_or_data': 1, 'human_reported_issue_then_verified_fix_attempt': 1, 'verification_or_tests': 1, 'commit_general': 1, 'bug_fix': 1}\nOutcomes: {'claimed_resolved_with_verification_signal': 6}\nQuality tiers: {'weak_supervision': 3}\nCI labels: {}\nCurriculum targets:\n- Train real-data plumbing and mock-removal tasks from source to UI.\n- Use as hard negatives for dashboards or apps claiming real runs without provenance.\nAssumption checks:\n- Is user-visible behavior backed by real storage/API/CI artifacts?\n- Are placeholders, sample data, or generated claims still in a production path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/ZhangShiCheng3D/MathVerse", "source_id": "graph-query-motif_query-f9e33bf68772e2d0", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/mock_as_real_or_placeholder/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "ZhangShiCheng3D/MathVerse", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "scanner-22e57bf1237ac217", "level": "note", "message": {"text": "Possibly dead Python function: kb_get"}, "properties": {"repobilityId": "3db1dab8c97cfbac", "scanner": "scanner-primary", "fingerprint": "22e57bf1237ac217", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mathverse-api/app/services/deeptutor/rest.py:23"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-14107043f7c52150", "level": "note", "message": {"text": "Possibly dead Python function: kb_supported_file_types"}, "properties": {"repobilityId": "beedd1df2aa8eab5", "scanner": "scanner-primary", "fingerprint": "14107043f7c52150", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mathverse-api/app/services/deeptutor/rest.py:39"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-0289a7940544c888", "level": "note", "message": {"text": "Possibly dead Python function: rest_put"}, "properties": {"repobilityId": "a0d768793bdd3b90", "scanner": "scanner-primary", "fingerprint": "0289a7940544c888", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mathverse-api/app/services/deeptutor/transport.py:51"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6715857c03f6f303", "level": "note", "message": {"text": "Possibly dead Python function: me"}, "properties": {"repobilityId": "833e7373fa6ff3fa", "scanner": "scanner-primary", "fingerprint": "6715857c03f6f303", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mathverse-miniapp/scripts/gen_tab_icons.py:43"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f7f739dff5bcf75e", "level": "warning", "message": {"text": "Dockerfile runs as root: deeptutor-patch/Dockerfile"}, "properties": {"repobilityId": "462653a83e3ea0cf", "scanner": "scanner-primary", "fingerprint": "f7f739dff5bcf75e", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"ruleId": "scanner-e48bb916175182b1", "level": "warning", "message": {"text": "Docker base image uses a mutable or implicit tag: ghcr.io/hkuds/deeptutor:latest"}, "properties": {"repobilityId": "e971e501e8201db7", "scanner": "scanner-primary", "fingerprint": "e48bb916175182b1", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "deeptutor-patch/Dockerfile"}, "region": {"startLine": 23}}}]}, {"ruleId": "scanner-a8743d51eb4cb2b0", "level": "warning", "message": {"text": "Dockerfile runs as root: mathverse-api/Dockerfile"}, "properties": {"repobilityId": "2993e1f93db5e1f4", "scanner": "scanner-primary", "fingerprint": "a8743d51eb4cb2b0", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"ruleId": "scanner-154a7b3f17a02e32", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: python:3.11-slim"}, "properties": {"repobilityId": "11e9a519e80abc3e", "scanner": "scanner-primary", "fingerprint": "154a7b3f17a02e32", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mathverse-api/Dockerfile"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-01f18cc354a7bf1c", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in mathverse-api/app/main.py:25"}, "properties": {"repobilityId": "a3717fc036ea223d", "scanner": "scanner-primary", "fingerprint": "01f18cc354a7bf1c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mathverse-api/app/main.py"}, "region": {"startLine": 25}}}]}, {"ruleId": "scanner-25e9b2811e1954f5", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in mathverse-api/app/routes/pay.py:95"}, "properties": {"repobilityId": "4d54e436da6c0c33", "scanner": "scanner-primary", "fingerprint": "25e9b2811e1954f5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mathverse-api/app/routes/pay.py"}, "region": {"startLine": 95}}}]}, {"ruleId": "scanner-ae2e0b8800ca43ff", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in docs/mathverse-design-review-20260601.html:101"}, "properties": {"repobilityId": "adf34610261ecb08", "scanner": "scanner-primary", "fingerprint": "ae2e0b8800ca43ff", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "docs/mathverse-design-review-20260601.html"}, "region": {"startLine": 101}}}]}, {"ruleId": "scanner-4601e3ad3bb28677", "level": "warning", "message": {"text": "No CI/CD pipelines detected"}, "properties": {"repobilityId": "c3ee439bce2bc51e", "scanner": "scanner-primary", "fingerprint": "4601e3ad3bb28677", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "7a793a1c1ba148cb", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "6d469b868c7d7855", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-b9088664ace7f748", "level": "note", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "7d6d58089bc8a8dc", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-749d4bc1bd66df5f", "level": "warning", "message": {"text": "Agent instructions exist but release-hardening basics are missing"}, "properties": {"repobilityId": "d19a0330da0077b5", "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": "d59146368d4a4322", "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": "354486fc802ebfb5", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-c0e2f17efefa1110", "level": "none", "message": {"text": "Commented-code block (6 lines) in deeptutor-patch/patch.py:49"}, "properties": {"repobilityId": "b84cba07607c6d94", "scanner": "scanner-primary", "fingerprint": "c0e2f17efefa1110", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-914f466bdd3e3277", "level": "none", "message": {"text": "Commented-code block (5 lines) in mathverse-api/app/config.py:16"}, "properties": {"repobilityId": "cff04b9322e4b510", "scanner": "scanner-primary", "fingerprint": "914f466bdd3e3277", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-64eac67e865bbc98", "level": "none", "message": {"text": "Commented-code block (9 lines) in mathverse-api/app/routes/tutor.py:50"}, "properties": {"repobilityId": "178672e14b917103", "scanner": "scanner-primary", "fingerprint": "64eac67e865bbc98", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ad1f2c0971b89ce0", "level": "note", "message": {"text": "10 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "3bfdc60c61f1870e", "scanner": "scanner-primary", "fingerprint": "ad1f2c0971b89ce0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "f2db48da84669e99", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "fa12b40706718989", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-21ffd7080ada54bb", "level": "error", "message": {"text": "FastAPI POST `wechat_mp_login` without auth dependency \u2014 mathverse-api/app/routes/auth.py:144"}, "properties": {"repobilityId": "83f591626a0a2f71", "scanner": "scanner-primary", "fingerprint": "21ffd7080ada54bb", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mathverse-api/app/routes/auth.py"}, "region": {"startLine": 144}}}]}, {"ruleId": "scanner-ea15e621ccd23e0e", "level": "error", "message": {"text": "FastAPI POST `sms_send` without auth dependency \u2014 mathverse-api/app/routes/auth.py:206"}, "properties": {"repobilityId": "3ac92e86bb9bb120", "scanner": "scanner-primary", "fingerprint": "ea15e621ccd23e0e", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mathverse-api/app/routes/auth.py"}, "region": {"startLine": 206}}}]}, {"ruleId": "scanner-1525a3db95bb3a6e", "level": "error", "message": {"text": "FastAPI POST `sms_verify` without auth dependency \u2014 mathverse-api/app/routes/auth.py:224"}, "properties": {"repobilityId": "d4b69280155c5b7d", "scanner": "scanner-primary", "fingerprint": "1525a3db95bb3a6e", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mathverse-api/app/routes/auth.py"}, "region": {"startLine": 224}}}]}, {"ruleId": "scanner-53c775399db54c28", "level": "error", "message": {"text": "FastAPI POST `wechat_callback` without auth dependency \u2014 mathverse-api/app/routes/pay.py:101"}, "properties": {"repobilityId": "45acebf985d4f3b2", "scanner": "scanner-primary", "fingerprint": "53c775399db54c28", "layer": "security", "severity": "high", "confidence": 1.0, "tags": ["auth", "owasp", "auth.fastapi.unauth_mutation"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mathverse-api/app/routes/pay.py"}, "region": {"startLine": 101}}}]}, {"ruleId": "scanner-6f37d06cfa7d74cd", "level": "error", "message": {"text": "Dangling fetch: POST /api/solve/deep (mathverse-miniapp/src/stores/solve.ts:133)"}, "properties": {"repobilityId": "63cdb523da6b195e", "scanner": "scanner-primary", "fingerprint": "6f37d06cfa7d74cd", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-b07b989d528eb78a", "level": "error", "message": {"text": "Dangling fetch: POST /api/solve/vision (mathverse-miniapp/src/stores/solve.ts:160)"}, "properties": {"repobilityId": "d8d7cccd264fdd00", "scanner": "scanner-primary", "fingerprint": "b07b989d528eb78a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-0506cb2da06c6280", "level": "error", "message": {"text": "Dangling fetch: POST /api/solve/step-explain (mathverse-miniapp/src/stores/solve.ts:187)"}, "properties": {"repobilityId": "32960355dfccc1e1", "scanner": "scanner-primary", "fingerprint": "0506cb2da06c6280", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-208fcdf50b8f65d8", "level": "error", "message": {"text": "Dangling fetch: POST /api/me/mistakes (mathverse-miniapp/src/stores/solve.ts:204)"}, "properties": {"repobilityId": "268f5904f317cf5b", "scanner": "scanner-primary", "fingerprint": "208fcdf50b8f65d8", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-7f6b8e11748d8a7a", "level": "error", "message": {"text": "Dangling fetch: GET /api/notebook/list (mathverse-miniapp/src/stores/notebook.ts:30)"}, "properties": {"repobilityId": "7adbe3fa718d9e22", "scanner": "scanner-primary", "fingerprint": "7f6b8e11748d8a7a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-64fa4f87f22caa7b", "level": "error", "message": {"text": "Dangling fetch: POST /api/notebook/create (mathverse-miniapp/src/stores/notebook.ts:40)"}, "properties": {"repobilityId": "2d41b14d6af86c54", "scanner": "scanner-primary", "fingerprint": "64fa4f87f22caa7b", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-18dd4ec095d313fe", "level": "error", "message": {"text": "Dangling fetch: DELETE /api/notebook/${encodeURIComponent(id)} (mathverse-miniapp/src/stores/notebook.ts:50)"}, "properties": {"repobilityId": "c805f619512aa749", "scanner": "scanner-primary", "fingerprint": "18dd4ec095d313fe", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-72d686bba41d10a0", "level": "error", "message": {"text": "Dangling fetch: POST /api/notebook/${encodeURIComponent(id)}/record (mathverse-miniapp/src/stores/notebook.ts:59)"}, "properties": {"repobilityId": "80de8b88bf787e04", "scanner": "scanner-primary", "fingerprint": "72d686bba41d10a0", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-dc1cf021f72ffd2c", "level": "error", "message": {"text": "Dangling fetch: POST /api/auth/wechat/mp-login (mathverse-miniapp/src/stores/user.ts:36)"}, "properties": {"repobilityId": "49072084aba91fb3", "scanner": "scanner-primary", "fingerprint": "dc1cf021f72ffd2c", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-9082dd07125f98a6", "level": "error", "message": {"text": "Dangling fetch: POST /api/auth/sms/send (mathverse-miniapp/src/stores/user.ts:54)"}, "properties": {"repobilityId": "36d5f286a05c74b2", "scanner": "scanner-primary", "fingerprint": "9082dd07125f98a6", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-821870c449c7c7ce", "level": "error", "message": {"text": "Dangling fetch: POST /api/auth/sms/verify (mathverse-miniapp/src/stores/user.ts:62)"}, "properties": {"repobilityId": "355fda6db6388637", "scanner": "scanner-primary", "fingerprint": "821870c449c7c7ce", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-29355829e0b7475b", "level": "error", "message": {"text": "Dangling fetch: GET /api/auth/me (mathverse-miniapp/src/stores/user.ts:78)"}, "properties": {"repobilityId": "99701994bdb8aa27", "scanner": "scanner-primary", "fingerprint": "29355829e0b7475b", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-d3b64fb03dbbd34f", "level": "error", "message": {"text": "Dangling fetch: PATCH /api/me/profile (mathverse-miniapp/src/stores/user.ts:86)"}, "properties": {"repobilityId": "7739430f213a9a4b", "scanner": "scanner-primary", "fingerprint": "d3b64fb03dbbd34f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-2c8abc4eaaa5f310", "level": "error", "message": {"text": "Dangling fetch: POST /api/solve/visualize (mathverse-miniapp/src/stores/visualize.ts:37)"}, "properties": {"repobilityId": "68a52c34b9511364", "scanner": "scanner-primary", "fingerprint": "2c8abc4eaaa5f310", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-950b2043e615e316", "level": "error", "message": {"text": "Dangling fetch: GET /api/activity/recent (mathverse-miniapp/src/stores/activity.ts:40)"}, "properties": {"repobilityId": "314f12c51d690db9", "scanner": "scanner-primary", "fingerprint": "950b2043e615e316", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-c1f10f8c54cea540", "level": "error", "message": {"text": "Dangling fetch: GET /api/activity/${encodeURIComponent(id)} (mathverse-miniapp/src/stores/activity.ts:50)"}, "properties": {"repobilityId": "92c0c21bdae8ed37", "scanner": "scanner-primary", "fingerprint": "c1f10f8c54cea540", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-3679da6ca10fbb72", "level": "error", "message": {"text": "Dangling fetch: GET /api/tutor/capabilities (mathverse-miniapp/src/stores/tutor.ts:150)"}, "properties": {"repobilityId": "e7d164083a942230", "scanner": "scanner-primary", "fingerprint": "3679da6ca10fbb72", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-2ec695fb676be3bc", "level": "error", "message": {"text": "Dangling fetch: GET /api/book/list (mathverse-miniapp/src/stores/book.ts:46)"}, "properties": {"repobilityId": "e481de37732323ba", "scanner": "scanner-primary", "fingerprint": "2ec695fb676be3bc", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-5b0fa388190d4e1c", "level": "error", "message": {"text": "Dangling fetch: POST /api/book/create (mathverse-miniapp/src/stores/book.ts:56)"}, "properties": {"repobilityId": "acd22da0fd21f119", "scanner": "scanner-primary", "fingerprint": "5b0fa388190d4e1c", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-81c3ae6e6c219d14", "level": "error", "message": {"text": "Dangling fetch: POST /api/book/${encodeURIComponent(id)}/generate (mathverse-miniapp/src/stores/book.ts:70)"}, "properties": {"repobilityId": "cc11763e86668b87", "scanner": "scanner-primary", "fingerprint": "81c3ae6e6c219d14", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-82b45fa46f1ae5e4", "level": "error", "message": {"text": "Dangling fetch: GET /api/book/${encodeURIComponent(id)} (mathverse-miniapp/src/stores/book.ts:80)"}, "properties": {"repobilityId": "7423d8777566ae1e", "scanner": "scanner-primary", "fingerprint": "82b45fa46f1ae5e4", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-a3071ad08ce359ad", "level": "error", "message": {"text": "Dangling fetch: DELETE /api/book/${encodeURIComponent(id)} (mathverse-miniapp/src/stores/book.ts:94)"}, "properties": {"repobilityId": "064f2d4cd0ab99d9", "scanner": "scanner-primary", "fingerprint": "a3071ad08ce359ad", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-fc3b2f1a58d0c7c2", "level": "error", "message": {"text": "Dangling fetch: GET /api/memory/overview (mathverse-miniapp/src/stores/memory.ts:33)"}, "properties": {"repobilityId": "5bd888be403185ba", "scanner": "scanner-primary", "fingerprint": "fc3b2f1a58d0c7c2", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-e9df6e0cb85018bf", "level": "error", "message": {"text": "Dangling fetch: GET /api/memory/doc/${layer}/${encodeURIComponent(key)} (mathverse-miniapp/src/stores/memory.ts:46)"}, "properties": {"repobilityId": "9ed5af93729448a3", "scanner": "scanner-primary", "fingerprint": "e9df6e0cb85018bf", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-3402d9e0d91325bb", "level": "error", "message": {"text": "Dangling fetch: POST /api/learn/lecture (mathverse-miniapp/src/stores/learn.ts:88)"}, "properties": {"repobilityId": "8f5cf31665f315ce", "scanner": "scanner-primary", "fingerprint": "3402d9e0d91325bb", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-f9b65e8f78f52fc5", "level": "error", "message": {"text": "Dangling fetch: POST /api/learn/exercise/generate (mathverse-miniapp/src/stores/learn.ts:101)"}, "properties": {"repobilityId": "bf25a8add46206ad", "scanner": "scanner-primary", "fingerprint": "f9b65e8f78f52fc5", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-578df89867a3dead", "level": "error", "message": {"text": "Dangling fetch: POST /api/learn/exercise/grade (mathverse-miniapp/src/stores/learn.ts:117)"}, "properties": {"repobilityId": "cff784891d75dcb6", "scanner": "scanner-primary", "fingerprint": "578df89867a3dead", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-b3d509607ec56ee3", "level": "error", "message": {"text": "Dangling fetch: POST /api/me/mistakes (mathverse-miniapp/src/stores/learn.ts:143)"}, "properties": {"repobilityId": "61107685a1f76f8b", "scanner": "scanner-primary", "fingerprint": "b3d509607ec56ee3", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-02eab6f850c63509", "level": "error", "message": {"text": "Dangling fetch: GET /api/kb/list (mathverse-miniapp/src/stores/kb.ts:90)"}, "properties": {"repobilityId": "1fe57b949c36a3e9", "scanner": "scanner-primary", "fingerprint": "02eab6f850c63509", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-d7f6777152f7c48f", "level": "error", "message": {"text": "Dangling fetch: POST /api/kb/curriculum/${stage}/seed (mathverse-miniapp/src/stores/kb.ts:100)"}, "properties": {"repobilityId": "06ec4a7f5f0d8ed2", "scanner": "scanner-primary", "fingerprint": "d7f6777152f7c48f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-7fe09da95d0cce1d", "level": "error", "message": {"text": "Dangling fetch: DELETE /api/kb/${encodeURIComponent(name)} (mathverse-miniapp/src/stores/kb.ts:110)"}, "properties": {"repobilityId": "421dc1adc6062bd5", "scanner": "scanner-primary", "fingerprint": "7fe09da95d0cce1d", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-571b11c131e022fc", "level": "error", "message": {"text": "Dangling fetch: GET /api/learn/kg/kaoyan (mathverse-miniapp/src/pages/score/index.tsx:30)"}, "properties": {"repobilityId": "adc2e56dc9087aa8", "scanner": "scanner-primary", "fingerprint": "571b11c131e022fc", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-cfc2b7ef7d92578f", "level": "error", "message": {"text": "Dangling fetch: GET /api/me/score/estimate?exam_mode=${mode} (mathverse-miniapp/src/pages/score/index.tsx:41)"}, "properties": {"repobilityId": "498c6c1d54c1c541", "scanner": "scanner-primary", "fingerprint": "cfc2b7ef7d92578f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-970696a7b8e3257d", "level": "error", "message": {"text": "Dangling fetch: GET /api/pay/subscription (mathverse-miniapp/src/pages/membership/index.tsx:23)"}, "properties": {"repobilityId": "bc94eb325dd3aedd", "scanner": "scanner-primary", "fingerprint": "970696a7b8e3257d", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-62318cc1eee84d99", "level": "error", "message": {"text": "Dangling fetch: GET /api/pay/plans (mathverse-miniapp/src/pages/membership/index.tsx:26)"}, "properties": {"repobilityId": "e3a10004d6404709", "scanner": "scanner-primary", "fingerprint": "62318cc1eee84d99", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-bf07f3f5ea1a180a", "level": "error", "message": {"text": "Dangling fetch: POST /api/pay/wechat/prepay (mathverse-miniapp/src/pages/membership/index.tsx:33)"}, "properties": {"repobilityId": "add73603af590e5d", "scanner": "scanner-primary", "fingerprint": "bf07f3f5ea1a180a", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-abf7732ae288ce55", "level": "error", "message": {"text": "Dangling fetch: GET /api/me/progress (mathverse-miniapp/src/pages/me/index.tsx:37)"}, "properties": {"repobilityId": "7b505fdc357e0c50", "scanner": "scanner-primary", "fingerprint": "abf7732ae288ce55", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-cb7b987da2f57b20", "level": "error", "message": {"text": "Dangling fetch: GET /api/me/mistakes/review-today (mathverse-miniapp/src/pages/me/index.tsx:38)"}, "properties": {"repobilityId": "08e9a19ee388547a", "scanner": "scanner-primary", "fingerprint": "cb7b987da2f57b20", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-1bdc03d5f7e5903e", "level": "error", "message": {"text": "Dangling fetch: GET /api/me/mistakes?${qs} (mathverse-miniapp/src/pages/mistakes/index.tsx:57)"}, "properties": {"repobilityId": "9a42dadccd4e2454", "scanner": "scanner-primary", "fingerprint": "1bdc03d5f7e5903e", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-25cf90f6ea24b1e4", "level": "error", "message": {"text": "Dangling fetch: PATCH /api/me/mistakes/${id} (mathverse-miniapp/src/pages/mistakes/index.tsx:71)"}, "properties": {"repobilityId": "b6209b3b1d86f8a6", "scanner": "scanner-primary", "fingerprint": "25cf90f6ea24b1e4", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-2bcf35f1f2c96b0f", "level": "error", "message": {"text": "Dangling fetch: GET /api/me/plan/today (mathverse-miniapp/src/pages/plan/index.tsx:19)"}, "properties": {"repobilityId": "f6d97d0a1b0c56e4", "scanner": "scanner-primary", "fingerprint": "2bcf35f1f2c96b0f", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-460f7e9bed9c7242", "level": "error", "message": {"text": "Dangling fetch: GET /x (mathverse-miniapp/src/services/api.test.ts:21)"}, "properties": {"repobilityId": "b24c204224f5fa57", "scanner": "scanner-primary", "fingerprint": "460f7e9bed9c7242", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-87dc81a6015aa5da", "level": "error", "message": {"text": "Dangling fetch: GET /auth/sms/send (mathverse-miniapp/src/services/api.test.ts:30)"}, "properties": {"repobilityId": "28944381ec59dc19", "scanner": "scanner-primary", "fingerprint": "87dc81a6015aa5da", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-1b59740416f8e374", "level": "error", "message": {"text": "Dangling fetch: GET /x (mathverse-miniapp/src/services/api.test.ts:36)"}, "properties": {"repobilityId": "53f2c8849ee9329b", "scanner": "scanner-primary", "fingerprint": "1b59740416f8e374", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-e945eeb339c5ad6c", "level": "error", "message": {"text": "Dangling fetch: GET /x (mathverse-miniapp/src/services/api.test.ts:41)"}, "properties": {"repobilityId": "963d2d3e736c41a0", "scanner": "scanner-primary", "fingerprint": "e945eeb339c5ad6c", "layer": "api", "severity": "high", "confidence": 1.0, "tags": ["wiring", "dangling-fetch", "helper:request"]}}, {"ruleId": "scanner-4756b4c4da7d2088", "level": "note", "message": {"text": "Unused endpoint: GET /api/health"}, "properties": {"repobilityId": "13fbb7befea1482a", "scanner": "scanner-primary", "fingerprint": "4756b4c4da7d2088", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-30ebd8b02a460b20", "level": "note", "message": {"text": "Unused endpoint: GET /api/metrics"}, "properties": {"repobilityId": "44e403d8ead36b8c", "scanner": "scanner-primary", "fingerprint": "30ebd8b02a460b20", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-d682e1d215955e6a", "level": "note", "message": {"text": "Unused endpoint: GET /list"}, "properties": {"repobilityId": "54a6202f9c4222ae", "scanner": "scanner-primary", "fingerprint": "d682e1d215955e6a", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-599114e2a4d7d26d", "level": "note", "message": {"text": "Unused endpoint: POST /create"}, "properties": {"repobilityId": "f35ab5219b4fefe0", "scanner": "scanner-primary", "fingerprint": "599114e2a4d7d26d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-5e2f17f368b9d98c", "level": "note", "message": {"text": "Unused endpoint: POST /{book_id}/generate"}, "properties": {"repobilityId": "e0b93a9d7e9a2912", "scanner": "scanner-primary", "fingerprint": "5e2f17f368b9d98c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-856d9bddd56b47e1", "level": "note", "message": {"text": "Unused endpoint: GET /{book_id}"}, "properties": {"repobilityId": "acb7f4af727e2bd6", "scanner": "scanner-primary", "fingerprint": "856d9bddd56b47e1", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-5b165df1c46414bb", "level": "note", "message": {"text": "Unused endpoint: POST /{book_id}/compile-page"}, "properties": {"repobilityId": "ffb25e3cd95657c3", "scanner": "scanner-primary", "fingerprint": "5b165df1c46414bb", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-6f0ce9000a38b564", "level": "note", "message": {"text": "Unused endpoint: DELETE /{book_id}"}, "properties": {"repobilityId": "b651eb15f33e50c4", "scanner": "scanner-primary", "fingerprint": "6f0ce9000a38b564", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-d10e5c556d4bcff6", "level": "note", "message": {"text": "Unused endpoint: GET /capabilities"}, "properties": {"repobilityId": "0969140bc3e27486", "scanner": "scanner-primary", "fingerprint": "d10e5c556d4bcff6", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-955005a6da85f786", "level": "note", "message": {"text": "Unused endpoint: GET /recent"}, "properties": {"repobilityId": "c12a7f095ed2d327", "scanner": "scanner-primary", "fingerprint": "955005a6da85f786", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-38092f3b1aae362b", "level": "note", "message": {"text": "Unused endpoint: GET /{entry_id}"}, "properties": {"repobilityId": "4918037589322949", "scanner": "scanner-primary", "fingerprint": "38092f3b1aae362b", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-4cc857accee51b2f", "level": "note", "message": {"text": "Unused endpoint: GET /wechat/login"}, "properties": {"repobilityId": "8cc8899d2fecfd02", "scanner": "scanner-primary", "fingerprint": "4cc857accee51b2f", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-f5e9a38860f8d61a", "level": "note", "message": {"text": "Unused endpoint: GET /wechat/callback"}, "properties": {"repobilityId": "75e8d1851c66f657", "scanner": "scanner-primary", "fingerprint": "f5e9a38860f8d61a", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-6bdaed8ec3832506", "level": "note", "message": {"text": "Unused endpoint: POST /wechat/mp-login"}, "properties": {"repobilityId": "cb01ee664fd798b4", "scanner": "scanner-primary", "fingerprint": "6bdaed8ec3832506", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-dd1b19f062726993", "level": "note", "message": {"text": "Unused endpoint: POST /sms/send"}, "properties": {"repobilityId": "b17a006ce472a257", "scanner": "scanner-primary", "fingerprint": "dd1b19f062726993", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-130ea2752dd29fd7", "level": "note", "message": {"text": "Unused endpoint: POST /sms/verify"}, "properties": {"repobilityId": "76c37b5af1f45e7e", "scanner": "scanner-primary", "fingerprint": "130ea2752dd29fd7", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-7ce17d6b092a81ca", "level": "note", "message": {"text": "Unused endpoint: POST /refresh"}, "properties": {"repobilityId": "b991492d1b7e23f4", "scanner": "scanner-primary", "fingerprint": "7ce17d6b092a81ca", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-fd1dc91abf32142d", "level": "note", "message": {"text": "Unused endpoint: GET /me"}, "properties": {"repobilityId": "ed18f36215e0a8ea", "scanner": "scanner-primary", "fingerprint": "fd1dc91abf32142d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-29945524829d4b0c", "level": "note", "message": {"text": "Unused endpoint: POST /{name}/upload"}, "properties": {"repobilityId": "60e0b30d1f95739c", "scanner": "scanner-primary", "fingerprint": "29945524829d4b0c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-c562c83979dce866", "level": "note", "message": {"text": "Unused endpoint: DELETE /{name}"}, "properties": {"repobilityId": "af2d9e8b0cf0c89c", "scanner": "scanner-primary", "fingerprint": "c562c83979dce866", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-2805420c44d10dc1", "level": "note", "message": {"text": "Unused endpoint: POST /{name}/reindex"}, "properties": {"repobilityId": "00c4c62ca432e12b", "scanner": "scanner-primary", "fingerprint": "2805420c44d10dc1", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-0359bdf2295d049b", "level": "note", "message": {"text": "Unused endpoint: GET /{name}/status"}, "properties": {"repobilityId": "e817fb01fa044307", "scanner": "scanner-primary", "fingerprint": "0359bdf2295d049b", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-a123f3bacae85b56", "level": "note", "message": {"text": "Unused endpoint: POST /curriculum/{stage}/seed"}, "properties": {"repobilityId": "4225c2c8b340fa93", "scanner": "scanner-primary", "fingerprint": "a123f3bacae85b56", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-7a009b1a56794f45", "level": "note", "message": {"text": "Unused endpoint: POST /"}, "properties": {"repobilityId": "eecb05157c133dde", "scanner": "scanner-primary", "fingerprint": "7a009b1a56794f45", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-1f8e48cd338b2831", "level": "note", "message": {"text": "Unused endpoint: GET /{question_id}"}, "properties": {"repobilityId": "bd790c92a3ac02f2", "scanner": "scanner-primary", "fingerprint": "1f8e48cd338b2831", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ac2f552bf9d967ce", "level": "note", "message": {"text": "Unused endpoint: GET /overview"}, "properties": {"repobilityId": "0ae7801ce18259c5", "scanner": "scanner-primary", "fingerprint": "ac2f552bf9d967ce", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-5b8164815c65ad44", "level": "note", "message": {"text": "Unused endpoint: GET /doc/{layer}/{key}"}, "properties": {"repobilityId": "4bececf1227b10b9", "scanner": "scanner-primary", "fingerprint": "5b8164815c65ad44", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-619853fd9a80f057", "level": "note", "message": {"text": "Unused endpoint: GET /progress"}, "properties": {"repobilityId": "6cf9326240362472", "scanner": "scanner-primary", "fingerprint": "619853fd9a80f057", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-5a0664bb1477ea77", "level": "note", "message": {"text": "Unused endpoint: GET /progress/radar"}, "properties": {"repobilityId": "f784b98555838790", "scanner": "scanner-primary", "fingerprint": "5a0664bb1477ea77", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-59a1cc885f47e39f", "level": "note", "message": {"text": "Unused endpoint: PATCH /profile"}, "properties": {"repobilityId": "a6b0a74b7997f8b9", "scanner": "scanner-primary", "fingerprint": "59a1cc885f47e39f", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e2ed0a3cfd4b8dd2", "level": "note", "message": {"text": "Unused endpoint: GET /mistakes"}, "properties": {"repobilityId": "8798323db568750b", "scanner": "scanner-primary", "fingerprint": "e2ed0a3cfd4b8dd2", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-9135fd752c4021fd", "level": "note", "message": {"text": "Unused endpoint: POST /mistakes"}, "properties": {"repobilityId": "27f2ffaffe43868e", "scanner": "scanner-primary", "fingerprint": "9135fd752c4021fd", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ee7668be290a650a", "level": "note", "message": {"text": "Unused endpoint: PATCH /mistakes/{mistake_id}"}, "properties": {"repobilityId": "d1063252f0799052", "scanner": "scanner-primary", "fingerprint": "ee7668be290a650a", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-ed88b1d14e8f7fe7", "level": "note", "message": {"text": "Unused endpoint: GET /mistakes/review-today"}, "properties": {"repobilityId": "a8c6d9a87264621a", "scanner": "scanner-primary", "fingerprint": "ed88b1d14e8f7fe7", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-b48d21595a08cb7b", "level": "note", "message": {"text": "Unused endpoint: GET /plan/today"}, "properties": {"repobilityId": "692f0f8f44bab8d5", "scanner": "scanner-primary", "fingerprint": "b48d21595a08cb7b", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-4aeb55a814b57c1e", "level": "note", "message": {"text": "Unused endpoint: POST /score/estimate"}, "properties": {"repobilityId": "773d4ea92544ddb5", "scanner": "scanner-primary", "fingerprint": "4aeb55a814b57c1e", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-71bbf68fcd72ca65", "level": "note", "message": {"text": "Unused endpoint: GET /score/estimate"}, "properties": {"repobilityId": "ad60049c54c97b8f", "scanner": "scanner-primary", "fingerprint": "71bbf68fcd72ca65", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-47571fd84219ca1d", "level": "note", "message": {"text": "Unused endpoint: GET /streak"}, "properties": {"repobilityId": "c04a03d4c5f68770", "scanner": "scanner-primary", "fingerprint": "47571fd84219ca1d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-4eccb2ce347a8fe6", "level": "note", "message": {"text": "Unused endpoint: GET /kg/{stage}"}, "properties": {"repobilityId": "1c7b3f55439a2dce", "scanner": "scanner-primary", "fingerprint": "4eccb2ce347a8fe6", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-1ab9ed492a438dbf", "level": "note", "message": {"text": "Unused endpoint: POST /lecture"}, "properties": {"repobilityId": "a5dabc30e4df5e7d", "scanner": "scanner-primary", "fingerprint": "1ab9ed492a438dbf", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-9ee19c00799d62e7", "level": "note", "message": {"text": "Unused endpoint: POST /exercise/generate"}, "properties": {"repobilityId": "d12f14ed446c02ac", "scanner": "scanner-primary", "fingerprint": "9ee19c00799d62e7", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-92feeb8d969984c6", "level": "note", "message": {"text": "Unused endpoint: POST /exercise/grade"}, "properties": {"repobilityId": "32c6dcf1e01a5a90", "scanner": "scanner-primary", "fingerprint": "92feeb8d969984c6", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-16aa64317112f82d", "level": "note", "message": {"text": "Unused endpoint: GET /{notebook_id}"}, "properties": {"repobilityId": "eec34251c6d0002a", "scanner": "scanner-primary", "fingerprint": "16aa64317112f82d", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-e0cfd8f7528313d9", "level": "note", "message": {"text": "Unused endpoint: DELETE /{notebook_id}"}, "properties": {"repobilityId": "6b0073b0e09c9a35", "scanner": "scanner-primary", "fingerprint": "e0cfd8f7528313d9", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-77e5204afcb2a7bc", "level": "note", "message": {"text": "Unused endpoint: POST /{notebook_id}/record"}, "properties": {"repobilityId": "a7a9bddd6326a9b8", "scanner": "scanner-primary", "fingerprint": "77e5204afcb2a7bc", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-c67ddea3c17528d6", "level": "note", "message": {"text": "Unused endpoint: GET /subscription"}, "properties": {"repobilityId": "df02c4295a585c05", "scanner": "scanner-primary", "fingerprint": "c67ddea3c17528d6", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-f5cae3068724f9d3", "level": "note", "message": {"text": "Unused endpoint: GET /plans"}, "properties": {"repobilityId": "dc112f11cb6b22cb", "scanner": "scanner-primary", "fingerprint": "f5cae3068724f9d3", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-45338e7fc4bf8f32", "level": "note", "message": {"text": "Unused endpoint: POST /wechat/prepay"}, "properties": {"repobilityId": "4c1169d303142659", "scanner": "scanner-primary", "fingerprint": "45338e7fc4bf8f32", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-2fd4439557b8ccc4", "level": "note", "message": {"text": "Unused endpoint: POST /wechat/callback"}, "properties": {"repobilityId": "a7e092dffd2e5fe9", "scanner": "scanner-primary", "fingerprint": "2fd4439557b8ccc4", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}, {"ruleId": "scanner-785072983daedd4c", "level": "note", "message": {"text": "Unused endpoint: POST /deep"}, "properties": {"repobilityId": "9fe3603fb58626a8", "scanner": "scanner-primary", "fingerprint": "785072983daedd4c", "layer": "api", "severity": "low", "confidence": 1.0, "tags": ["wiring", "unused-endpoint"]}}]}]}