{"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_assumption_check", "name": "Foundry mined assumption checks: smurphy6492/autonomous-analytics-agent", "shortDescription": {"text": "Foundry mined assumption checks: smurphy6492/autonomous-analytics-agent"}, "fullDescription": {"text": "Comment chain pattern product: assumption_checks\nRepo: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#5\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: smurphy6492/autonomous-analytics-agent#5\nRepo: smurphy6492/autonomous-analytics-agent\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\nChanged file count: 1\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'test_or_ci': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-a034e1fc7de2afa1\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\","}, "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: smurphy6492/autonomous-analytics-agent", "shortDescription": {"text": "Foundry mined test ci gap after feedback: smurphy6492/autonomous-analytics-agent"}, "fullDescription": {"text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#5\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: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#5\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: smurphy6492/autonomous-analytics-agent#5\nRepo: smurphy6492/autonomous-analytics-agent\nIssue/PR number: 5\nGraph consistency label: supported_by_high_confidence_link\nNodes: 14\nEdges: 18\nNode types: {'commit': "}, "properties": {"scanner": "foundry_dataset", "category": "testing", "severity": "high", "confidence": 0.78, "cwe": "", "owasp": ""}}, {"id": "foundry_bad_chain", "name": "Foundry mined bad chains: smurphy6492/autonomous-analytics-agent", "shortDescription": {"text": "Foundry mined bad chains: smurphy6492/autonomous-analytics-agent"}, "fullDescription": {"text": "Comment chain pattern product: bad_chains\nRepo: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#6\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: smurphy6492/autonomous-analytics-agent#6\nRepo: smurphy6492/autonomous-analytics-agent\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\nChanged file count: 8\nLabels: {'mock_placeholder': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 1, 'test_or_ci': 7}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-53577198211d13b3\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"mock_placeholder"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "high", "confidence": 0.84, "cwe": "", "owasp": ""}}, {"id": "foundry_fake_real_gap", "name": "Foundry mined mock as real or placeholder: smurphy6492/autonomous-analytics-agent", "shortDescription": {"text": "Foundry mined mock as real or placeholder: smurphy6492/autonomous-analytics-agent"}, "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: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#6\nEvidence:\nGraph motif: Mock, sample, placeholder, or self-attested behavior treated as real\nMotif id: mock_as_real_or_placeholder\nPolarity: bad\nTraining usage: hard_negative\nSeverity: critical\nRepo: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#6\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: smurphy6492/autonomous-analytics-agent#6\nRepo: smurphy6492/autonomous-analytics-agent\nIssue/PR number: 6\nGraph consistency label: supported_by_high_confidence_l"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "critical", "confidence": 0.82, "cwe": "", "owasp": ""}}, {"id": "scanner-9710c8d059e53154", "name": "No frontend routes/components detected", "shortDescription": {"text": "No frontend routes/components detected"}, "fullDescription": {"text": "No React/Vue/Next routes were found. This is fine for backend-only repos."}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6372cebde0220094", "name": "No auth library detected", "shortDescription": {"text": "No auth library detected"}, "fullDescription": {"text": "The scanner did not find any standard auth library (JWT, OAuth, NextAuth, Auth0, etc.). The repo has auth/admin/session surface indicators, so auth may live in custom code, in a separate service, or be missing."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4601e3ad3bb28677", "name": "No CI/CD pipelines detected", "shortDescription": {"text": "No CI/CD pipelines detected"}, "fullDescription": {"text": "No GitHub Actions, GitLab CI, or CircleCI configs found. Without CI you can't gate deploys on tests/lints."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-141b30a41e03817b", "name": "No license file detected", "shortDescription": {"text": "No license file detected"}, "fullDescription": {"text": "No LICENSE/COPYING/NOTICE file was found. Generated repositories often omit licensing, which blocks reuse and automated intake."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 33 console/debugger/print-style debug statements in non-test source. This is a common fast-generation residue before production cleanup."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-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-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-319e66a630e14977", "name": "2 env vars used in code but missing from .env.example", "shortDescription": {"text": "2 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `ANTHROPIC_MODEL`, `CACHE_DIR`. Add them (with a placeholder/comment) to .env.example so onboarding doesn't break."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/19907"}, "properties": {"repository": "smurphy6492/autonomous-analytics-agent", "repoUrl": "https://github.com/smurphy6492/autonomous-analytics-agent", "branch": "main"}, "results": [{"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: smurphy6492/autonomous-analytics-agent"}, "properties": {"repobilityId": 312456, "scanner": "foundry_dataset", "fingerprint": "efb9588dfeb36f669f1d7ed1668d5b0a248311ef4ac42a9765cc1ebcd9e2fc3c", "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": "smurphy6492/autonomous-analytics-agent#5", "human_labels": ["test_ci_gap", "test_or_ci"], "issue_number": "5", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "smurphy6492/autonomous-analytics-agent", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-5a382f27cf907ebb", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"test_or_ci": 1}, "linked_commit_count": 3, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 1, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#5\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: smurphy6492/autonomous-analytics-agent#5\nRepo: smurphy6492/autonomous-analytics-agent\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\nChanged file count: 1\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'test_or_ci': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-a034e1fc7de2afa1\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/smurphy6492/autonomous-analytics-agent/pull/5\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: smurphy6492/autonomous-analytics-agent\\nAuthor: smurphy6492 (User)\\nURL: https://github.com/smurphy6492/autonomous-analytics-agent/pull/5\\nTitle: ci: bump checkout/setup-python to v6 (Node 24)\\nBody:\\n## What\\nBump `actions/checkout@v4`\u2192`@v6` and `actions/setup-python@v5`\u2192`@v6` in the CI workflow.\\n\\n## Why\\nGitHub is retiring Node 20 from its runners (forced to Node 24 on 2026-06-16, removed 2026-09-16). The v4/v5 pins run on Node 20 and emit a deprecation warning on every run. The v6 majors of both actions ship the Node 24 runtime (`runs.using: node24`).\\n\\n## How\\nTwo-line version bump. No change to the check itself \u2014 this PR's own green run validates the new actions work.\\n\\n## Test Plan\\n- [ ] CI check passes (green) with the bumped actions, no Node 20 warning\\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-6f4e346480c666b8\",\n    \"filename\": \".github/workflows/ci.yml\",\n    \"label\": \"test_or_ci\",\n    \"status\": \"modified\",\n    \"additions\": 2,\n    \"deletions\": 2,\n    \"changes\": 4,\n    \"blob_url\": \"https://github.com/smurphy6492/autonomous-analytics-agent/blob/d6ca7d95e3414dc766b033dc8d7fbc1eb01d6c1e/.github%2Fworkflows%2Fci.yml\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-60ed9e413932811d\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: smurphy6492/autonomous-analytics-agent\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 1, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 1, \"repo_has_source_bundle\": 1, \"source_bun\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/smurphy6492/autonomous-analytics-agent", "source_id": "comment-chain-pattern-assumption_checks-fbb85bbdc4627879", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "smurphy6492/autonomous-analytics-agent", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: smurphy6492/autonomous-analytics-agent"}, "properties": {"repobilityId": 312455, "scanner": "foundry_dataset", "fingerprint": "e2fca9cc388f571f50b3b52cf98c6a620709da6ec0d2aa0b3c3c847dc2f3f80e", "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": "smurphy6492/autonomous-analytics-agent#4", "human_labels": ["source_or_other", "test_ci_gap", "test_or_ci", "ui_or_frontend"], "issue_number": "4", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "smurphy6492/autonomous-analytics-agent", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-610c5f69b7d26be3", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 12, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"test_or_ci": 2, "ui_or_frontend": 7, "source_or_other": 3}, "linked_commit_count": 4, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 1, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#4\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: smurphy6492/autonomous-analytics-agent#4\nRepo: smurphy6492/autonomous-analytics-agent\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 4\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\nChanged file count: 12\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 3, 'ui_or_frontend': 7, 'test_or_ci': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-1a6076a83d1960df\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/smurphy6492/autonomous-analytics-agent/pull/4\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: smurphy6492/autonomous-analytics-agent\\nAuthor: smurphy6492 (User)\\nURL: https://github.com/smurphy6492/autonomous-analytics-agent/pull/4\\nTitle: chore: make repo pass make check (lint, types, stale tests)\\nBody:\\n## What\\nBring the repo to a green `make check` (lint + type-check + test) so the new CI gate (PR #3) can pass.\\n\\n## Why\\nAdding the CI workflow in #3 surfaced that the repo never actually passed its own `make check`:\\n- 59 ruff violations (mostly E501 line-length across `src/`, `scripts/`, `tests/`)\\n- 1 mypy strict error in `renderer._decode_bdata` (returning `Any`)\\n- 2 stale tests in `test_builder` asserting lowercase headers, but `_format_header` title-cases them by design\\n\\nThis is the gate doing its job \u2014 it caught real drift the moment it was added.\\n\\n## How\\nAll changes are mechanical and behavior-preserving:\\n- `ruff format` the codebase + reflow remaining long lines; one `if/else` -> ternary (SIM108)\\n- `mypy`: cast the unknown-dtype `re.Match` group to `str`\\n- Update the two stale test assertions to expect the title-cased headers the code produces\\n\\nNo production logic changed. The header title-casing and\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-18b4ae91f3fdaa6d\",\n    \"filename\": \"scripts/download_financial_data.py\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 24,\n    \"deletions\": 19,\n    \"changes\": 43,\n    \"blob_url\": \"https://github.com/smurphy6492/autonomous-analytics-agent/blob/7f8b228d60a34efaee18595a50d40c7dae783301/scripts%2Fdownload_financial_data.py\"\n  },\n  {\n    \"id\": \"github-pr-file-file-f9590f9d688047c7\",\n    \"filename\": \"scripts/generate_marketing_data.py\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 160,\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/smurphy6492/autonomous-analytics-agent", "source_id": "comment-chain-pattern-assumption_checks-e20147706eec275f", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "smurphy6492/autonomous-analytics-agent", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: smurphy6492/autonomous-analytics-agent"}, "properties": {"repobilityId": 312454, "scanner": "foundry_dataset", "fingerprint": "561366da88c6b3e476ea989a42306afc39015484a09ac2d3809769ec5bedfe73", "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": "smurphy6492/autonomous-analytics-agent#3", "human_labels": ["test_ci_gap", "test_or_ci"], "issue_number": "3", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "smurphy6492/autonomous-analytics-agent", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-0bb9a8eb85926fc4", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"test_or_ci": 1}, "linked_commit_count": 4, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 1, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#3\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: smurphy6492/autonomous-analytics-agent#3\nRepo: smurphy6492/autonomous-analytics-agent\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 4\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\nChanged file count: 1\nLabels: {'test_ci_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'test_or_ci': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-5d2485fb5d079258\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"test_ci_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/smurphy6492/autonomous-analytics-agent/pull/3\",\n    \"text\": \"GitHub feedback: test_ci_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: smurphy6492/autonomous-analytics-agent\\nAuthor: smurphy6492 (User)\\nURL: https://github.com/smurphy6492/autonomous-analytics-agent/pull/3\\nTitle: ci: add GitHub Actions workflow running make check\\nBody:\\n## What\\nAdd a GitHub Actions CI workflow (`.github/workflows/ci.yml`) that runs `make check` (lint + type-check + test) on every push and pull request.\\n\\n## Why\\nThe repo has a full test pyramid and a `make check` target, but no enforced gate. Checks were invoked manually, so nothing blocked a red change from landing. This converts the manual check into an enforced gate: the merge fails the moment a check fails.\\n\\n## How\\n- Triggers on `push` and `pull_request` to `main` / `master`\\n- `actions/checkout@v4` + `actions/setup-python@v5`, Python 3.11, pip caching\\n- Installs via `pip install -e \\\".[dev]\\\"`\\n- Runs `make check` (invokes the existing Makefile target, no duplicated logic)\\n\\nFirst deployment of the workspace mechanical-gates pattern (`.claude/rules/mechanical-gates.md`, `/add-gates` skill).\\n\\n## Test Plan\\n- [ ] CI check appears in PR checks\\n- [ ] CI check passes (green)\\n\\n\ud83e\udd16 Generated with [Claude Code](https://claude\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-42d2184002e77e37\",\n    \"filename\": \".github/workflows/ci.yml\",\n    \"label\": \"test_or_ci\",\n    \"status\": \"added\",\n    \"additions\": 27,\n    \"deletions\": 0,\n    \"changes\": 27,\n    \"blob_url\": \"https://github.com/smurphy6492/autonomous-analytics-agent/blob/3290ecc342d9f32ad695869dfa85853ddcf4e4a6/.github%2Fworkflows%2Fci.yml\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-f8e1ca95de194038\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: smurphy6492/autonomous-analytics-agent\nGraph label: source_artifact_without_verification_graph\nNodes: 5\nEdges: 6\nNode typ\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/smurphy6492/autonomous-analytics-agent", "source_id": "comment-chain-pattern-assumption_checks-ef4a94847b58af65", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/assumption_checks/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "smurphy6492/autonomous-analytics-agent", "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: smurphy6492/autonomous-analytics-agent"}, "properties": {"repobilityId": 341058, "scanner": "foundry_dataset", "fingerprint": "51956f88958325ecf861f9b5fb5033540c0392e07003fdc4e3f26e56b43348c1", "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, "verification_or_tests": 3, "ci_pending_or_incomplete": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 3, "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": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 18, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 1, "comment_chain_has_ci": 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": 14, "node_types": {"repo": 1, "commit": 3, "thread": 1, "comment": 1, "pr_file": 1, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "smurphy6492/autonomous-analytics-agent#5", "issue_number": "5", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "smurphy6492/autonomous-analytics-agent", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-643f1e7b84afe878", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 4}}, "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: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#5\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: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#5\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: smurphy6492/autonomous-analytics-agent#5\nRepo: smurphy6492/autonomous-analytics-agent\nIssue/PR number: 5\nGraph consistency label: supported_by_high_confidence_link\nNodes: 14\nEdges: 18\nNode types: {'commit': 3, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'pr_file': 1, 'comment_chain': 1, 'ci_summary': 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_has_ci': 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: {'verification_or_tests': 3, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'test_or_ci': 1, 'comment_has_related_commit_context': 1, 'ci_pending_or_incomplete': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {'ci_pending_or_incomplete': 2}\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/smurphy6492/autonomous-analytics-agent", "source_id": "graph-query-motif_query-298a1163cf6d8c92", "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": "smurphy6492/autonomous-analytics-agent", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: smurphy6492/autonomous-analytics-agent"}, "properties": {"repobilityId": 341057, "scanner": "foundry_dataset", "fingerprint": "45aa85c5a7b34e63267a15c9318877a98b6cddd2e041e7214613f15043f563b2", "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": 7, "source_or_other": 3, "verification_or_tests": 4, "ci_pending_or_incomplete": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 3, "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": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 52, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 12, "comment_chain_has_ci": 1, "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": 4, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 26, "node_types": {"repo": 1, "commit": 4, "thread": 1, "comment": 1, "pr_file": 12, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "smurphy6492/autonomous-analytics-agent#4", "issue_number": "4", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "smurphy6492/autonomous-analytics-agent", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-b5497593a45de4d4", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 8, "ui_or_frontend": 28, "source_or_other": 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: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#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: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#4\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: smurphy6492/autonomous-analytics-agent#4\nRepo: smurphy6492/autonomous-analytics-agent\nIssue/PR number: 4\nGraph consistency label: supported_by_high_confidence_link\nNodes: 26\nEdges: 52\nNode types: {'pr_file': 12, 'commit': 4, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 12, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'comment_chain_links_commit': 4, 'chain_has_link_quality': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_has_ci': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 7, 'verification_or_tests': 4, 'source_or_other': 3, 'ambiguous_needs_more_evidence': 3, 'test_or_ci': 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, 'ci_pending_or_incomplete': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {'ci_pending_or_incomplete': 2}\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/smurphy6492/autonomous-analytics-agent", "source_id": "graph-query-motif_query-705b6f6c946654a2", "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": "smurphy6492/autonomous-analytics-agent", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_test_ci_gap", "level": "error", "message": {"text": "Foundry mined test ci gap after feedback: smurphy6492/autonomous-analytics-agent"}, "properties": {"repobilityId": 341056, "scanner": "foundry_dataset", "fingerprint": "d18fc792012786a662248eb32e5b129683b349a1e2715f6d2c07806ba585a879", "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, "verification_or_tests": 4, "ci_pending_or_incomplete": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 3, "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": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 19, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 1, "comment_chain_has_ci": 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": 4, "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": 4, "thread": 1, "comment": 1, "pr_file": 1, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "smurphy6492/autonomous-analytics-agent#3", "issue_number": "3", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "smurphy6492/autonomous-analytics-agent", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-aed8616b4b54684b", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 4}}, "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: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#3\nEvidence:\nGraph motif: Feedback or fix context exposes missing test/CI guardrails\nMotif id: test_ci_gap_after_feedback\nPolarity: bad\nTraining usage: hard_negative\nSeverity: high\nRepo: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#3\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: smurphy6492/autonomous-analytics-agent#3\nRepo: smurphy6492/autonomous-analytics-agent\nIssue/PR number: 3\nGraph consistency label: supported_by_high_confidence_link\nNodes: 15\nEdges: 19\nNode types: {'commit': 4, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'pr_file': 1, 'comment_chain': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'comment_chain_links_commit': 4, '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_has_ci': 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: {'verification_or_tests': 4, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'test_ci_gap': 1, 'test_or_ci': 1, 'comment_has_related_commit_context': 1, 'ci_pending_or_incomplete': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {'ci_pending_or_incomplete': 2}\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/smurphy6492/autonomous-analytics-agent", "source_id": "graph-query-motif_query-3c0343b9c29796a1", "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": "smurphy6492/autonomous-analytics-agent", "source_dataset": "graph_queries/test_ci_gap_after_feedback", "training_usage": "hard_negative"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: smurphy6492/autonomous-analytics-agent"}, "properties": {"repobilityId": 322973, "scanner": "foundry_dataset", "fingerprint": "06dd6ebf5c3b3dc983048ccff7101fc3a58f3c538b634a8167cfc90e7c280e53", "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": "smurphy6492/autonomous-analytics-agent#6", "human_labels": ["mock_placeholder", "source_or_other", "test_or_ci"], "issue_number": "6", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.82, "repo_full_name": "smurphy6492/autonomous-analytics-agent", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-4a08c3b21bfe2d70", "helicopter_views": {}, "artifact_families": {"docs": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 8, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"test_or_ci": 7, "source_or_other": 1}, "linked_commit_count": 1, "helicopter_view_count": 0, "source_artifact_count": 1, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence", "high_risk_human_feedback_label"], "linked_ci_commit_count": 1, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: bad_chains\nRepo: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#6\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: smurphy6492/autonomous-analytics-agent#6\nRepo: smurphy6492/autonomous-analytics-agent\nThread label: thread_has_human_issue_and_fix_context\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\nChanged file count: 8\nLabels: {'mock_placeholder': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 1, 'test_or_ci': 7}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-53577198211d13b3\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"mock_placeholder\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/smurphy6492/autonomous-analytics-agent/pull/6\",\n    \"text\": \"GitHub feedback: mock_placeholder\\nPolarity: bad\\nKind: pull_request_body\\nRepo: smurphy6492/autonomous-analytics-agent\\nAuthor: smurphy6492 (User)\\nURL: https://github.com/smurphy6492/autonomous-analytics-agent/pull/6\\nTitle: test(agents): contract-enforcement tests + align pre-commit with CI\\nBody:\\n## What\\nAdd 20 contract-enforcement tests (T2.3.1\u2013T2.3.4) and fix the pre-commit hooks that had drifted out of step with CI.\\n\\n## Why\\nThe T2.3 review found every agent handoff is typed (Pydantic, no raw dicts) but the contracts were thinly *tested* \u2014 agent unit tests mock `BaseAgent`, so the real `call_structured` validation never ran, and nothing forced a constraint violation. While landing the tests, the local pre-commit hooks turned out to diverge from this repo's own CI (stale ruff v0.4.0 vs CI's 0.15; an isolated mypy v1.10.0 + pandas-stubs that checks test files and disagrees with CI's `mypy src/`). A gate that disagrees with CI is worse than none.\\n\\n## How\\n**Commit 1 \u2014 align pre-commit with CI** (`ci:`): bump ruff to v0.15.16, drop the divergent mypy hook (mypy stays enforced in CI via `make check`). Mirrors the geo-lift-agents resolution.\\n\\n**Commit 2 \u2014 the tests** (`test:`), no producti\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-9ece10eb7cfa3f67\",\n    \"filename\": \".pre-commit-config.yaml\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 16,\n    \"deletions\": 9,\n    \"changes\": 25,\n    \"blob_url\": \"https://github.com/smurphy6492/autonomous-analytics-agent/blob/ec420e519d9ae0760690404af21a9c63dead4c44/.pre-commit-config.yaml\"\n  },\n  {\n    \"id\": \"github-pr-file-file-9037fc2d11da7c1d\",\n    \"filename\": \"tests/conftest.py\",\n    \"label\": \"test_or_ci\",\n    \"status\": \"modified\",\n    \"additions\": 28,\n    \"deletions\": 0,\n    \"changes\": 28,\n    \"blob_url\": \"https://github.com/sm\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/smurphy6492/autonomous-analytics-agent", "source_id": "comment-chain-pattern-bad_chains-dca957d10b3b5e52", "synthetic": false, "gold_label": "", "graph_label": "source_artifact_without_verification_graph", "source_path": "/data/distillate/foundry_data/comment_chain_patterns/bad_chains/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "smurphy6492/autonomous-analytics-agent", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_fake_real_gap", "level": "error", "message": {"text": "Foundry mined mock as real or placeholder: smurphy6492/autonomous-analytics-agent"}, "properties": {"repobilityId": 327151, "scanner": "foundry_dataset", "fingerprint": "6fa6aa07f14c3e4c7c1626079bea6d4dbcf88818317dbdf98c82e39ad2e6ed9b", "category": "practices", "severity": "critical", "confidence": 0.82, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Mock, sample, placeholder, or self-attested behavior treated as real", "intent": "Hard negatives for fake completeness and missing real data paths.", "labels": {"test_or_ci": 7, "source_or_other": 1, "mock_placeholder": 1, "verification_or_tests": 1, "ci_pending_or_incomplete": 1, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 3, "comment_has_related_commit_context": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "mock_as_real_or_placeholder", "outcomes": {"ambiguous_needs_more_evidence": 6}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 37, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 8, "comment_chain_has_ci": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 8, "thread_has_comment_chain": 1, "comment_chain_links_commit": 1, "comment_chain_touches_file": 8, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 19, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 1, "pr_file": 8, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "smurphy6492/autonomous-analytics-agent#6", "issue_number": "6", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "smurphy6492/autonomous-analytics-agent", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-d4b34109ab0fdaef", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"test_or_ci": 28, "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_high_confidence_link\nRepo: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#6\nEvidence:\nGraph motif: Mock, sample, placeholder, or self-attested behavior treated as real\nMotif id: mock_as_real_or_placeholder\nPolarity: bad\nTraining usage: hard_negative\nSeverity: critical\nRepo: smurphy6492/autonomous-analytics-agent\nThread: smurphy6492/autonomous-analytics-agent#6\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: smurphy6492/autonomous-analytics-agent#6\nRepo: smurphy6492/autonomous-analytics-agent\nIssue/PR number: 6\nGraph consistency label: supported_by_high_confidence_link\nNodes: 19\nEdges: 37\nNode types: {'pr_file': 8, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'commit': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 8, 'comment_chain_touches_file': 8, 'issue_chain_touches_file': 8, 'chain_has_link_quality': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_links_commit': 1, 'comment_chain_has_ci': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'test_or_ci': 7, 'ambiguous_needs_more_evidence': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'source_or_other': 1, 'comment_has_related_commit_context': 1, 'verification_or_tests': 1, 'ci_pending_or_incomplete': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {'ci_pending_or_incomplete': 2}\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/smurphy6492/autonomous-analytics-agent", "source_id": "graph-query-motif_query-cedbe79e896abb26", "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": "smurphy6492/autonomous-analytics-agent", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "scanner-9710c8d059e53154", "level": "none", "message": {"text": "No frontend routes/components detected"}, "properties": {"repobilityId": "44ca61485762e494", "scanner": "scanner-primary", "fingerprint": "9710c8d059e53154", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-6372cebde0220094", "level": "warning", "message": {"text": "No auth library detected"}, "properties": {"repobilityId": "a5b6035a5bbf8054", "scanner": "scanner-primary", "fingerprint": "6372cebde0220094", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["coverage", "auth"]}}, {"ruleId": "scanner-4601e3ad3bb28677", "level": "warning", "message": {"text": "No CI/CD pipelines detected"}, "properties": {"repobilityId": "c3ee439bce2bc51e", "scanner": "scanner-primary", "fingerprint": "4601e3ad3bb28677", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "b6b78e61155739d6", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "7e3e1a8e97cb0408", "scanner": "scanner-primary", "fingerprint": "3ab5d313dda8e5f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["debug", "cleanup", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-b9088664ace7f748", "level": "note", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "4cb0c2a20b31bfca", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "d3bc33eb04e5651c", "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": "7e1663f0626b7123", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-319e66a630e14977", "level": "none", "message": {"text": "2 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "d838d1fc5d8231c9", "scanner": "scanner-primary", "fingerprint": "319e66a630e14977", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}]}]}