{"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: sabansi/Neural-Search-Engine", "shortDescription": {"text": "Foundry mined assumption checks: sabansi/Neural-Search-Engine"}, "fullDescription": {"text": "Comment chain pattern product: assumption_checks\nRepo: sabansi/Neural-Search-Engine\nThread: sabansi/Neural-Search-Engine#2\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: sabansi/Neural-Search-Engine#2\nRepo: sabansi/Neural-Search-Engine\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {'source_or_other': 1, 'docs_or_claims': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-c863f501f40173b2\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sabansi/Neural-Search-Engine/pull/2"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "medium", "confidence": 0.62, "cwe": "", "owasp": ""}}, {"id": "foundry_auth_guardrail_gap", "name": "Foundry mined security auth guardrail gaps: sabansi/Neural-Search-Engine", "shortDescription": {"text": "Foundry mined security auth guardrail gaps: sabansi/Neural-Search-Engine"}, "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: sabansi/Neural-Search-Engine\nThread: sabansi/Neural-Search-Engine#1\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: sabansi/Neural-Search-Engine\nThread: sabansi/Neural-Search-Engine#1\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sabansi/Neural-Search-Engine#1\nRepo: sabansi/Neural-Search-Engine\nIssue/PR number: 1\nGraph consistency label: weak_supervision_needs_review\nNodes: 60\nEdges: 86\nNode types: {'pr_file': 50, 'link_quality': 3, 'thread': 1, 'repo': "}, "properties": {"scanner": "foundry_dataset", "category": "auth", "severity": "critical", "confidence": 0.78, "cwe": "", "owasp": ""}}, {"id": "scanner-48a300c33ad27a5c", "name": "Possibly dead Python function: loss_fn", "shortDescription": {"text": "Possibly dead Python function: loss_fn"}, "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-ce22648c961a3df9", "name": "Possibly dead Python function: forward", "shortDescription": {"text": "Possibly dead Python function: forward"}, "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-02ab773c9a9e0441", "name": "Possibly dead Python function: log_message", "shortDescription": {"text": "Possibly dead Python function: log_message"}, "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-296933b95b3bb8d1", "name": "Possibly dead Python function: do_GET", "shortDescription": {"text": "Possibly dead Python function: do_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-c8f374e2ab1ce23a", "name": "Possibly dead Python function: forward", "shortDescription": {"text": "Possibly dead Python function: forward"}, "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-0d9b5fc01fb206a3", "name": "Possibly dead Python function: save_encoder", "shortDescription": {"text": "Possibly dead Python function: save_encoder"}, "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-1dc1b852d9ca52c8", "name": "Possibly dead Python function: load_encoder", "shortDescription": {"text": "Possibly dead Python function: load_encoder"}, "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-1925700f057b91fb", "name": "Possibly dead Python function: factor", "shortDescription": {"text": "Possibly dead Python function: factor"}, "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-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-6893a6c8b0861585", "name": "Very low test-to-source ratio", "shortDescription": {"text": "Very low test-to-source ratio"}, "fullDescription": {"text": "0 test file(s) for 15 source file(s) (ratio 0.00). Consider adding integration or unit tests for critical paths."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "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 46 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: ci, tests. 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-629b9bf438efe6af", "name": "Network/subprocess call without timeout or try/except \u2014 scripts/run_overnight.py:48", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/run_overnight.py:48"}, "fullDescription": {"text": "`subprocess.Popen(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-49c98f7cedd9c977", "name": "Near-duplicate function bodies in 4 places", "shortDescription": {"text": "Near-duplicate function bodies in 4 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nsrc/model.py:forward, src/model.py:forward, src/model.py:forward, src/model.py:forward\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-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:\nsrc/data.py:collate, src/data.py:collate\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}}]}}, "automationDetails": {"id": "repobility/18706"}, "properties": {"repository": "sabansi/Neural-Search-Engine", "repoUrl": "https://github.com/sabansi/Neural-Search-Engine", "branch": "main"}, "results": [{"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sabansi/Neural-Search-Engine"}, "properties": {"repobilityId": 311978, "scanner": "foundry_dataset", "fingerprint": "cd25f646d2f6a1d91b7d2f614361a4974fd9ba396e160b7b97cab8a430f7cf3d", "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": "sabansi/Neural-Search-Engine#2", "human_labels": ["docs_or_claims", "human_feedback_general", "source_or_other"], "issue_number": "2", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.812, "repo_full_name": "sabansi/Neural-Search-Engine", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-39d243ed63897007", "helicopter_views": {}, "artifact_families": {"docs": 1, "generated_claims": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"docs_or_claims": 1, "source_or_other": 1}, "linked_commit_count": 1, "helicopter_view_count": 0, "source_artifact_count": 2, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_high_confidence"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: sabansi/Neural-Search-Engine\nThread: sabansi/Neural-Search-Engine#2\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: sabansi/Neural-Search-Engine#2\nRepo: sabansi/Neural-Search-Engine\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 2\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {'source_or_other': 1, 'docs_or_claims': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-c863f501f40173b2\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sabansi/Neural-Search-Engine/pull/2\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sabansi/Neural-Search-Engine\\nAuthor: lbegi23 (User)\\nURL: https://github.com/sabansi/Neural-Search-Engine/pull/2\\nTitle: Report: embed training curves + results chart, clarify data roles\\nBody:\\n- Embed runs/mlm and runs/contrastive curves in the training section (rubric: training presented with graphs)\\r\\n- Add evaluation/results_comparison.png bar chart under the results table\\r\\n- Add explicit SQuAD-vs-J&M data-roles table to the data section\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-30abf200c20481d8\",\n    \"filename\": \"evaluation/results_comparison.png\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 0,\n    \"deletions\": 0,\n    \"changes\": 0,\n    \"blob_url\": \"https://github.com/sabansi/Neural-Search-Engine/blob/297bb7f099374183c798dac4619d96876b045250/evaluation%2Fresults_comparison.png\"\n  },\n  {\n    \"id\": \"github-pr-file-file-90ab0f499480f022\",\n    \"filename\": \"report.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 19,\n    \"deletions\": 3,\n    \"changes\": 22,\n    \"blob_url\": \"https://github.com/sabansi/Neural-Search-Engine/blob/297bb7f099374183c798dac4619d96876b045250/report.md\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-c92d09fce692ff23\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: sabansi/Neural-Search-Engine\nGraph label: source_artifact_without_verification_graph\nNodes: 6\nEdges: 8\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"repo\": 1, \"source_artifact\": 2, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 2, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_source_artifact\": 2, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArtifact families: {\"docs\": 1, \"generated_claims\": 1}\nHelicopter views: {}\nBundle labels: {\"s\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sabansi/Neural-Search-Engine", "source_id": "comment-chain-pattern-assumption_checks-cb49141d9bb4a2ef", "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": "sabansi/Neural-Search-Engine", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: sabansi/Neural-Search-Engine"}, "properties": {"repobilityId": 311977, "scanner": "foundry_dataset", "fingerprint": "696199f415092701d276da8dc6acfb6e8e1ea32f471132d60e1b48bdeb672cc1", "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": "sabansi/Neural-Search-Engine#1", "human_labels": ["dependency_or_build", "docs_or_claims", "human_feedback_general", "security_or_auth", "source_or_other", "ui_or_frontend"], "issue_number": "1", "thread_label": "thread_needs_classification", "outcome_label": "ambiguous_needs_more_evidence", "source_backed": true, "max_confidence": 0.76, "repo_full_name": "sabansi/Neural-Search-Engine", "training_usage": "weak_supervision", "confidence_tier": "weak_supervision", "source_chain_id": "evidence-chain-issue_chain-5d7b5ed58bce3bef", "helicopter_views": {}, "artifact_families": {"docs": 1, "generated_claims": 1}, "source_chain_kind": "issue_chain", "changed_file_count": 50, "source_graph_label": "source_artifact_without_verification_graph", "changed_file_labels": {"docs_or_claims": 2, "ui_or_frontend": 7, "source_or_other": 37, "security_or_auth": 3, "dependency_or_build": 1}, "linked_commit_count": 1, "helicopter_view_count": 0, "source_artifact_count": 2, "classification_reasons": ["source_graph_has_real_artifacts", "link_quality_weak_supervision"], "linked_ci_commit_count": 0, "verification_artifact_count": 0, "design_schema_api_artifact_count": 0}, "text": "Comment chain pattern product: assumption_checks\nRepo: sabansi/Neural-Search-Engine\nThread: sabansi/Neural-Search-Engine#1\nOutcome: ambiguous_needs_more_evidence\nThread label: thread_needs_classification\nSource graph label: source_artifact_without_verification_graph\nReasons: source_graph_has_real_artifacts, link_quality_weak_supervision\nChain evidence:\nIssue/PR evidence chain: sabansi/Neural-Search-Engine#1\nRepo: sabansi/Neural-Search-Engine\nThread label: thread_needs_classification\nOutcome: ambiguous_needs_more_evidence\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 50\nLabels: {'human_feedback_general': 1}\nPolarities: {'neutral': 1}\nChanged file labels: {'source_or_other': 37, 'docs_or_claims': 2, 'security_or_auth': 3, 'dependency_or_build': 1, 'ui_or_frontend': 7}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-b6b45f17693025d6\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"human_feedback_general\",\n    \"polarity\": \"neutral\",\n    \"url\": \"https://github.com/sabansi/Neural-Search-Engine/pull/1\",\n    \"text\": \"GitHub feedback: human_feedback_general\\nPolarity: neutral\\nKind: pull_request_body\\nRepo: sabansi/Neural-Search-Engine\\nAuthor: lbegi23 (User)\\nURL: https://github.com/sabansi/Neural-Search-Engine/pull/1\\nTitle: Scratch encoder\\nBody:\\n\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-c74d2c59cca44ba0\",\n    \"filename\": \".gitignore\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 11,\n    \"deletions\": 0,\n    \"changes\": 11,\n    \"blob_url\": \"https://github.com/sabansi/Neural-Search-Engine/blob/c6fd1064e4ff1ea41abd5c3d109c1a981a0f8dca/.gitignore\"\n  },\n  {\n    \"id\": \"github-pr-file-file-37b2c06f8b1502ec\",\n    \"filename\": \"README.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 68,\n    \"deletions\": 41,\n    \"changes\": 109,\n    \"blob_url\": \"https://github.com/sabansi/Neural-Search-Engine/blob/c6fd1064e4ff1ea41abd5c3d109c1a981a0f8dca/README.md\"\n  },\n  {\n    \"id\": \"github-pr-file-file-4e23753600b7f4ba\",\n    \"filename\": \"evaluation/all_results.json\",\n    \"label\": \"source_or_other\",\n    \"status\": \"removed\",\n    \"additions\": 0,\n    \"deletions\": 20,\n    \"changes\": 20,\n    \"blob_url\": \"https://github.com/sabansi/Neural-Search-Engine/blob/e18a513d8fcfc3a95d5cef4cd3ef10b08f521ab9/evaluation%2Fall_results.json\"\n  },\n  {\n    \"id\": \"github-pr-file-file-5fbb6a4759cf8219\",\n    \"filename\": \"evaluation/baseline_comparison.png\",\n    \"label\": \"source_or_other\",\n    \"status\": \"removed\",\n    \"additions\": 0,\n    \"deletions\": 0,\n    \"changes\": 0,\n    \"blob_url\": \"https://github.com/sabansi/Neural-Search-Engine/blob/e18a513d8fcfc3a95d5cef4cd3ef10b08f521ab9/evaluation%2Fbaseline_comparison.png\"\n  },\n  {\n    \"id\": \"github-pr-file-file-2b5a033c2db6e9fe\",\n    \"filename\": \"evaluation/demo_results.json\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 70,\n    \"deletions\": 0,\n    \"changes\": 70,\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/sabansi/Neural-Search-Engine", "source_id": "comment-chain-pattern-assumption_checks-ceb269a5494a99f7", "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": "sabansi/Neural-Search-Engine", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "weak_supervision"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: sabansi/Neural-Search-Engine"}, "properties": {"repobilityId": 334876, "scanner": "foundry_dataset", "fingerprint": "3c2b6e3c70c5b02f6a11d99ec1c8cabec7517733b6e29b28be172abd905e1337", "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": {"commit_general": 1, "docs_or_claims": 2, "ui_or_frontend": 7, "source_or_other": 37, "security_or_auth": 3, "dependency_or_build": 1, "human_feedback_general": 1, "thread_needs_classification": 2, "issue_or_pull_request_thread": 1, "ambiguous_needs_more_evidence": 3, "comment_has_related_commit_context": 1}, "source": "graph_query_export", "motif_id": "security_auth_without_guardrails", "outcomes": {"ambiguous_needs_more_evidence": 6}, "polarity": "bad", "query_id": "security_auth_guardrail_gaps", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 86, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 50, "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": 1, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 60, "node_types": {"repo": 1, "commit": 1, "thread": 1, "comment": 1, "pr_file": 50, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "sabansi/Neural-Search-Engine#1", "issue_number": "1", "quality_tiers": {"weak_supervision": 3}, "repo_full_name": "sabansi/Neural-Search-Engine", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-89c1d144ff744f36", "graph_gold_label": "weak_supervision_needs_review", "changed_file_labels": {"docs_or_claims": 8, "ui_or_frontend": 28, "source_or_other": 148, "security_or_auth": 12, "dependency_or_build": 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: sabansi/Neural-Search-Engine\nThread: sabansi/Neural-Search-Engine#1\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: sabansi/Neural-Search-Engine\nThread: sabansi/Neural-Search-Engine#1\nGraph gold label: weak_supervision_needs_review\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: sabansi/Neural-Search-Engine#1\nRepo: sabansi/Neural-Search-Engine\nIssue/PR number: 1\nGraph consistency label: weak_supervision_needs_review\nNodes: 60\nEdges: 86\nNode types: {'pr_file': 50, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'commit': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 50, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_links_commit': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'source_or_other': 37, 'ui_or_frontend': 7, 'security_or_auth': 3, 'ambiguous_needs_more_evidence': 3, 'docs_or_claims': 2, 'thread_needs_classification': 2, 'issue_or_pull_request_thread': 1, 'human_feedback_general': 1, 'dependency_or_build': 1, 'comment_has_related_commit_context': 1, 'commit_general': 1}\nOutcomes: {'ambiguous_needs_more_evidence': 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/sabansi/Neural-Search-Engine", "source_id": "graph-query-motif_query-04f88874da4b0544", "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": "sabansi/Neural-Search-Engine", "source_dataset": "graph_queries/security_auth_guardrail_gaps", "training_usage": "assumption_check"}}}, {"ruleId": "scanner-48a300c33ad27a5c", "level": "note", "message": {"text": "Possibly dead Python function: loss_fn"}, "properties": {"repobilityId": "6e2b105b0c705a4b", "scanner": "scanner-primary", "fingerprint": "48a300c33ad27a5c", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/sanity_checks.py:158"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-ce22648c961a3df9", "level": "note", "message": {"text": "Possibly dead Python function: forward"}, "properties": {"repobilityId": "ea414cce7f8e5874", "scanner": "scanner-primary", "fingerprint": "ce22648c961a3df9", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/pretrain_mlm.py:38"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-02ab773c9a9e0441", "level": "note", "message": {"text": "Possibly dead Python function: log_message"}, "properties": {"repobilityId": "965f3150b4af5b2e", "scanner": "scanner-primary", "fingerprint": "02ab773c9a9e0441", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/serve.py:138"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-296933b95b3bb8d1", "level": "note", "message": {"text": "Possibly dead Python function: do_GET"}, "properties": {"repobilityId": "2d943bb45e4f13bd", "scanner": "scanner-primary", "fingerprint": "296933b95b3bb8d1", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/serve.py:149"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-c8f374e2ab1ce23a", "level": "note", "message": {"text": "Possibly dead Python function: forward"}, "properties": {"repobilityId": "ea414cce7f8e5874", "scanner": "scanner-primary", "fingerprint": "c8f374e2ab1ce23a", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/model.py:161"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-0d9b5fc01fb206a3", "level": "note", "message": {"text": "Possibly dead Python function: save_encoder"}, "properties": {"repobilityId": "d6c64856e0695c97", "scanner": "scanner-primary", "fingerprint": "0d9b5fc01fb206a3", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/model.py:166"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1dc1b852d9ca52c8", "level": "note", "message": {"text": "Possibly dead Python function: load_encoder"}, "properties": {"repobilityId": "b35f874d9038efb9", "scanner": "scanner-primary", "fingerprint": "1dc1b852d9ca52c8", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/model.py:173"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1925700f057b91fb", "level": "note", "message": {"text": "Possibly dead Python function: factor"}, "properties": {"repobilityId": "6f0fbfec5aaa8f68", "scanner": "scanner-primary", "fingerprint": "1925700f057b91fb", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/trainer.py:39"}, "region": {"startLine": 1}}}]}, {"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-6893a6c8b0861585", "level": "warning", "message": {"text": "Very low test-to-source ratio"}, "properties": {"repobilityId": "54a7de3f06314bf0", "scanner": "scanner-primary", "fingerprint": "6893a6c8b0861585", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["tests", "coverage"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "ab4228978fe09227", "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": "9d0360f61b00184b", "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": "5519629176aee398", "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": "6e7c721c8b9dd428", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-629b9bf438efe6af", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/run_overnight.py:48"}, "properties": {"repobilityId": "3e2623ff4ffdc135", "scanner": "scanner-primary", "fingerprint": "629b9bf438efe6af", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-49c98f7cedd9c977", "level": "note", "message": {"text": "Near-duplicate function bodies in 4 places"}, "properties": {"repobilityId": "b41b981f24f87622", "scanner": "scanner-primary", "fingerprint": "49c98f7cedd9c977", "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": "1ad55f2ce1c5b13f", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}]}]}