{"version": "2.1.0", "$schema": "https://json.schemastore.org/sarif-2.1.0.json", "runs": [{"tool": {"driver": {"name": "Repobility", "informationUri": "https://repobility.com", "rules": [{"id": "foundry_unresolved_feedback", "name": "Foundry mined unresolved feedback: urakutours/pomocare", "shortDescription": {"text": "Foundry mined unresolved feedback: urakutours/pomocare"}, "fullDescription": {"text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: assumption_check\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#1\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#1\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#1\nRepo: urakutours/pomocare\nIssue/PR number: 1\nGraph consistency label: assumption_check\nNodes: 32\nEdges: 61\nNode types: {'pr_file': 14, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_blueprint_gap", "name": "Foundry mined blueprint gap alignment: urakutours/pomocare", "shortDescription": {"text": "Foundry mined blueprint gap alignment: urakutours/pomocare"}, "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_high_confidence_link\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#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: urakutours/pomocare\nThread: urakutours/pomocare#5\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#5\nRepo: urakutours/pomocare\nIssue/PR number: 5\nGraph consistency label: supported_by_high_confidence_link\nNodes: 21\nEdges: 28\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'commit': 2, 'thread': 1, 'repo': 1, 'com"}, "properties": {"scanner": "foundry_dataset", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "foundry_assumption_check", "name": "Foundry mined assumption checks: urakutours/pomocare", "shortDescription": {"text": "Foundry mined assumption checks: urakutours/pomocare"}, "fullDescription": {"text": "Comment chain pattern product: assumption_checks\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#9\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: urakutours/pomocare#9\nRepo: urakutours/pomocare\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\nChanged file count: 4\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 4}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-ef1df6a6a414cf6e\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://"}, "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: urakutours/pomocare", "shortDescription": {"text": "Foundry mined test ci gap after feedback: urakutours/pomocare"}, "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: urakutours/pomocare\nThread: urakutours/pomocare#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: urakutours/pomocare\nThread: urakutours/pomocare#12\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#12\nRepo: urakutours/pomocare\nIssue/PR number: 12\nGraph consistency label: supported_by_high_confidence_link\nNodes: 14\nEdges: 20\nNode types: {'link_quality': 3, 'pr_file': 2, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'ci_summary': 1,"}, "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: urakutours/pomocare", "shortDescription": {"text": "Foundry mined schema ui api mismatch: urakutours/pomocare"}, "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_high_confidence_link\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#4\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: urakutours/pomocare\nThread: urakutours/pomocare#4\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#4\nRepo: urakutours/pomocare\nIssue/PR number: 4\nGraph consistency label: supported_by_high_confidence_link\nNodes: 22\nEdges: 40\nNode types: {'pr_file': 8, 'commit': 5, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'"}, "properties": {"scanner": "foundry_dataset", "category": "quality", "severity": "high", "confidence": 0.76, "cwe": "", "owasp": ""}}, {"id": "foundry_bad_chain", "name": "Foundry mined bad chains: urakutours/pomocare", "shortDescription": {"text": "Foundry mined bad chains: urakutours/pomocare"}, "fullDescription": {"text": "Comment chain pattern product: bad_chains\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#6\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: urakutours/pomocare#6\nRepo: urakutours/pomocare\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 8\nLabels: {'mock_placeholder': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 3, 'docs_or_claims': 2, 'security_or_auth': 1, 'dependency_or_build': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-4d00249cde9a1e87\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"mock_"}, "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: urakutours/pomocare", "shortDescription": {"text": "Foundry mined security auth guardrail gaps: urakutours/pomocare"}, "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: supported_by_high_confidence_link\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#6\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#6\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#6\nRepo: urakutours/pomocare\nIssue/PR number: 6\nGraph consistency label: supported_by_high_confidence_link\nNodes: 20\nEdges: 38\nNode types: {'pr_file': 8, 'commit': 3, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chai"}, "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: urakutours/pomocare", "shortDescription": {"text": "Foundry mined mock as real or placeholder: urakutours/pomocare"}, "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: urakutours/pomocare\nThread: urakutours/pomocare#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: urakutours/pomocare\nThread: urakutours/pomocare#6\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#6\nRepo: urakutours/pomocare\nIssue/PR number: 6\nGraph consistency label: supported_by_high_confidence_link\nNodes: 20\nEdges: 38\nNode types: {'pr_file': 8, 'commit': 3, 'link_quality': 3, 'thread': 1, 'repo': 1, 'commen"}, "properties": {"scanner": "foundry_dataset", "category": "practices", "severity": "critical", "confidence": 0.82, "cwe": "", "owasp": ""}}, {"id": "scanner-fd8fc8761420ca5b", "name": "Stray `console.log` in TS/JS \u2014 workers/src/routes/neon-auth-webhook.ts:154", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 workers/src/routes/neon-auth-webhook.ts:154"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3a0c61c7e74e4aac", "name": "Stray `console.log` in TS/JS \u2014 workers/src/routes/stripe-webhook.ts:31", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 workers/src/routes/stripe-webhook.ts:31"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-12ddfd70388fd58c", "name": "Stray `console.log` in TS/JS \u2014 supabase/functions/stripe-webhook/index.ts:68", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 supabase/functions/stripe-webhook/index.ts:68"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-299e42f8d55547db", "name": "Stray `console.log` in TS/JS \u2014 supabase/functions/cancel-subscription/index.ts:99", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 supabase/functions/cancel-subscription/index.ts:99"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7fecc4e11cfe3ec3", "name": "Stray `console.log` in TS/JS \u2014 supabase/functions/create-checkout-session/index.ts:76", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 supabase/functions/create-checkout-session/index.ts:76"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a1f14f3b7ede0089", "name": "Icon-only button without accessible name \u2014 src/App.tsx:138", "shortDescription": {"text": "Icon-only button without accessible name \u2014 src/App.tsx:138"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7f210ef397d1b63c", "name": "`truncate` class without `title=` for hover reveal \u2014 src/App.tsx:264", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/App.tsx:264"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e9013ee39ceb4ed6", "name": "Stray `console.log` in TS/JS \u2014 src/App.tsx:9", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/App.tsx:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-69e931b14de82fda", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/settings/SettingsPanel.tsx:1307", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/settings/SettingsPanel.tsx:1307"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-34bfde42311d89ed", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/layout/Header.tsx:90", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/layout/Header.tsx:90"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1e2b152136edea24", "name": "Icon-only button without accessible name \u2014 src/components/auth/LoginModal.tsx:160", "shortDescription": {"text": "Icon-only button without accessible name \u2014 src/components/auth/LoginModal.tsx:160"}, "fullDescription": {"text": "A `<button>` whose only child is a single glyph or symbol needs `title=` or `aria-label=` so screen readers (and tooltips on hover) work.\n\nWhy: P3 in CHECKLIST.md \u2014 icon-only buttons skipped a title.\nRule id: fq.button.no-label"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-072f548a354a1468", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/ads/AmazonBanner.tsx:66", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/ads/AmazonBanner.tsx:66"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-917e4aa3efd375c8", "name": "TODO/FIXME marker in shipping code \u2014 src/components/ads/AdBanner.tsx:68", "shortDescription": {"text": "TODO/FIXME marker in shipping code \u2014 src/components/ads/AdBanner.tsx:68"}, "fullDescription": {"text": "Track in /reviews or /issues, not as a code comment that rots.\n\nWhy: Drift control \u2014 shouldn't be the same as Quality TODO scanner.\nRule id: fq.todo-marker"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-30a6f9e0de6d15e9", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/stats/SessionSummary.tsx:214", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/stats/SessionSummary.tsx:214"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-809d6568af6c01d9", "name": "`truncate` class without `title=` for hover reveal \u2014 src/components/stats/StatsChart.tsx:238", "shortDescription": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/stats/StatsChart.tsx:238"}, "fullDescription": {"text": "A truncated value should reveal the full text on hover. Pass the full string via `title={...}` so the user can read it.\n\nWhy: P2 in CHECKLIST.md \u2014 truncate without hover-reveal.\nRule id: fq.truncate.no-title"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b8d4c6b70dbfd7f1", "name": "Stray `console.log` in TS/JS \u2014 src/contexts/AuthContext.tsx:78", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/contexts/AuthContext.tsx:78"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-250b711d624ecbc1", "name": "Stray `console.log` in TS/JS \u2014 src/hooks/useSessions.ts:24", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/hooks/useSessions.ts:24"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-947919ce1129db48", "name": "Stray `console.log` in TS/JS \u2014 src/services/analytics/AnalyticsService.ts:108", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/analytics/AnalyticsService.ts:108"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a8a8ab43361e8190", "name": "Stray `console.log` in TS/JS \u2014 src/services/storage/NeonAdapter.ts:49", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 src/services/storage/NeonAdapter.ts:49"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7176e5d95d18d844", "name": "Runtime dotenv file present in repo: .env", "shortDescription": {"text": "Runtime dotenv file present in repo: .env"}, "fullDescription": {"text": "`.env` looks like a runtime dotenv file. It contains secret-looking assignments for DOTENV_PUBLIC_KEY, DEPLOY_KEY_PATH. Move real values to a secret manager and keep only `.env.example` style templates in source control."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-75224d72f5983353", "name": "Insecure pattern 'local_storage_auth_token' in scripts/generate-screenshots.mjs:77", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in scripts/generate-screenshots.mjs:77"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2b61c7c324a30df0", "name": "Insecure pattern 'cors_wildcard' in supabase/functions/schedule-notification/index.ts:9", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in supabase/functions/schedule-notification/index.ts:9"}, "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-c2e1f14220a31afd", "name": "Insecure pattern 'direct_innerhtml_assignment' in lp/js/i18n.js:369", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in lp/js/i18n.js:369"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c6fffc9c7e6c6e33", "name": "Insecure pattern 'direct_innerhtml_assignment' in lp/js/main.js:258", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in lp/js/main.js:258"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-19188731a8af12e3", "name": "Possible secret in src/i18n/fr.ts", "shortDescription": {"text": "Possible secret in src/i18n/fr.ts"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-675d17cdbac67e60", "name": "Possible secret in src/i18n/en.ts", "shortDescription": {"text": "Possible secret in src/i18n/en.ts"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-ba04ed0616ed6452", "name": "Possible secret in src/i18n/de.ts", "shortDescription": {"text": "Possible secret in src/i18n/de.ts"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-0395cca16d0126c6", "name": "Possible secret in src/i18n/es.ts", "shortDescription": {"text": "Possible secret in src/i18n/es.ts"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-ceee208f4a11f516", "name": "Possible secret in src/i18n/pt.ts", "shortDescription": {"text": "Possible secret in src/i18n/pt.ts"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-2cd5f20e934b2a3d", "name": "Possible secret in src/i18n/ja.ts", "shortDescription": {"text": "Possible secret in src/i18n/ja.ts"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "confidence": 1.0}}, {"id": "scanner-50f4540d04ba470f", "name": "Possible secret in src/i18n/it.ts", "shortDescription": {"text": "Possible secret in src/i18n/it.ts"}, "fullDescription": {"text": "Detected pattern matching password_literal. Rotate the credential and move to a secret manager."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "critical", "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-b6a7a9a9b87daba8", "name": "Very large file: src/components/settings/SettingsPanel.tsx (2038 lines)", "shortDescription": {"text": "Very large file: src/components/settings/SettingsPanel.tsx (2038 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6893a6c8b0861585", "name": "Very low test-to-source ratio", "shortDescription": {"text": "Very low test-to-source ratio"}, "fullDescription": {"text": "0 test file(s) for 108 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-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 96 console/debugger/print-style debug statements in non-test source. This is a common fast-generation residue before production cleanup."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-72b2a6250083a784", "name": "Placeholder or mock-heavy implementation detected", "shortDescription": {"text": "Placeholder or mock-heavy implementation detected"}, "fullDescription": {"text": "Found 31 placeholder/mock markers across 5 source files. This often means the repo looks complete while core flows still use generated scaffolding or fake data."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2d0c7b7ab8f8aacf", "name": "Critical user flow still appears backed by mock or placeholder data", "shortDescription": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "fullDescription": {"text": "A payment/auth/admin/order/billing-style flow contains mock, fake, TODO, dummy, or placeholder markers in runtime source. In the Fable corpus this is a high-leverage completeness smell: the app can look finished while the money, identity, or tenant flow is still scaffolded."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-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-122f91b7f2906dc4", "name": "Agent authority lacks a verifier contract: .claude/settings.json", "shortDescription": {"text": "Agent authority lacks a verifier contract: .claude/settings.json"}, "fullDescription": {"text": "This agent instruction grants code or shell authority but does not state the verification gate that decides promotion. The recurring safe pattern is: LLM proposes; deterministic tests/build/security checks verify; only verified code promotes."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1409ff9c2cf4bebc", "name": "`fetch()` without try/.catch or AbortSignal \u2014 workers/src/index.ts:10", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 workers/src/index.ts:10"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7df66a3528d75eeb", "name": "`fetch()` without try/.catch or AbortSignal \u2014 workers/src/routes/neon-auth-webhook.ts:46", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 workers/src/routes/neon-auth-webhook.ts:46"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8f14fde77dcbdb2b", "name": "Legacy-named symbol `user_sessions_v2` in workers/src/routes/delete-account.ts:76", "shortDescription": {"text": "Legacy-named symbol `user_sessions_v2` in workers/src/routes/delete-account.ts:76"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-89cda0ab0f93a7f5", "name": "Commented-code block (6 lines) in src/components/ads/AdBanner.tsx:15", "shortDescription": {"text": "Commented-code block (6 lines) in src/components/ads/AdBanner.tsx:15"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f3d9fd72290cd598", "name": "Commented-code block (6 lines) in src/contexts/AuthContext.tsx:315", "shortDescription": {"text": "Commented-code block (6 lines) in src/contexts/AuthContext.tsx:315"}, "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-fc8e9e103e258b39", "name": "Commented-code block (5 lines) in src/hooks/useTimer.ts:147", "shortDescription": {"text": "Commented-code block (5 lines) in src/hooks/useTimer.ts:147"}, "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-fa3bf056ef8b9698", "name": "Legacy-named symbol `user_sessions_v2` in src/services/storage/NeonAdapter.ts:13", "shortDescription": {"text": "Legacy-named symbol `user_sessions_v2` in src/services/storage/NeonAdapter.ts:13"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-030da566069872e9", "name": "15 env vars used in code but missing from .env.example", "shortDescription": {"text": "15 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `BASE_URL`, `CALLS`, `DEV`, `DUR`, `F0`, `GEN_DATE`, `HI`, `LO` + 7 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}}]}}, "automationDetails": {"id": "repobility/21952"}, "properties": {"repository": "urakutours/pomocare", "repoUrl": "https://github.com/urakutours/pomocare", "branch": "main"}, "results": [{"ruleId": "foundry_unresolved_feedback", "level": "warning", "message": {"text": "Foundry mined unresolved feedback: urakutours/pomocare"}, "properties": {"repobilityId": 430857, "scanner": "foundry_dataset", "fingerprint": "0ebab8feff2084578d9702463f27b9b15cc83365c324512b7781fb8625d5fb89", "category": "practices", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback without linked fix evidence", "intent": "Negative/unresolved examples that should not be hallucinated into fixes.", "labels": {"ui_or_frontend": 13, "source_or_other": 1, "ui_workflow_gap": 1, "partial blueprint fit": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "unlinked_feedback_needs_evidence", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "bad", "query_id": "unresolved_feedback", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 61, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 14, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 1, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 32, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 14, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#1", "issue_number": "1", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "negative_or_unresolved", "source_motif_id": "graph-pattern-motif-thread-16767da2348ccc9b", "graph_gold_label": "assumption_check", "changed_file_labels": {"ui_or_frontend": 52, "source_or_other": 4}}, "text": "Graph query export: Human feedback without linked fix evidence\nQuery id: unresolved_feedback\nQuery type: motif_query\nIntent: Negative/unresolved examples that should not be hallucinated into fixes.\nMotif: unlinked_feedback_needs_evidence\nTraining usage: negative_or_unresolved\nGraph gold label: assumption_check\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#1\nEvidence:\nGraph motif: Human feedback exists without a linked fix\nMotif id: unlinked_feedback_needs_evidence\nPolarity: bad\nTraining usage: negative_or_unresolved\nSeverity: medium\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#1\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#1\nRepo: urakutours/pomocare\nIssue/PR number: 1\nGraph consistency label: assumption_check\nNodes: 32\nEdges: 61\nNode types: {'pr_file': 14, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 14, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, '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': 13, 'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'source_or_other': 1, 'human_reported_issue_no_linked_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Teach models to preserve unresolved human feedback instead of hallucinating fixes.\n- Build issue-to-regression examples where no accepted fix exists yet.\nAssumption checks:\n- Can a commit be linked by issue number, SHA, changed path, or time window?\n- If no link exists, is this explicitly labelled unresolved?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "graph-query-motif_query-f908784f7f03d560", "synthetic": false, "gold_label": "", "graph_label": "", "source_path": "/data/distillate/foundry_data/graph_queries/unresolved_feedback/shard-0.jsonl", "bundle_label": "", "priority_band": "", "priority_score": 0, "repo_full_name": "urakutours/pomocare", "source_dataset": "graph_queries/unresolved_feedback", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: urakutours/pomocare"}, "properties": {"repobilityId": 404888, "scanner": "foundry_dataset", "fingerprint": "ef64d3209c7850c8a6e737a76e6579d68c87def4d8273959ca265a63e7947213", "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, "source_or_other": 1, "api_integration_gap": 1, "partial blueprint fit": 2, "mostly follows blueprint": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 28, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 1, "thread_has_comment_chain": 1, "comment_chain_links_commit": 2, "comment_chain_touches_file": 1, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 21, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 1, "pr_file": 1, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#5", "issue_number": "5", "quality_tiers": {"high_confidence": 3, "assumption_check": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-2828ec752d3820b1", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"source_or_other": 4}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: supported_by_high_confidence_link\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#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: urakutours/pomocare\nThread: urakutours/pomocare#5\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#5\nRepo: urakutours/pomocare\nIssue/PR number: 5\nGraph consistency label: supported_by_high_confidence_link\nNodes: 21\nEdges: 28\nNode types: {'link_quality': 6, 'alignment': 3, 'blueprint_finding': 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': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'comment_chain_links_commit': 2, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_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, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'source_or_other': 1, 'human_reported_issue_then_fix_attempt': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "graph-query-motif_query-41d54feb9bbb4601", "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": "urakutours/pomocare", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: urakutours/pomocare"}, "properties": {"repobilityId": 404887, "scanner": "foundry_dataset", "fingerprint": "d9e89133b546f9163c9d2268619328fad43cd1acd8f2229cbd9597dc1d7deaa1", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"bug_fix": 5, "ui_or_frontend": 3, "api_integration_gap": 1, "partial blueprint fit": 2, "mostly follows blueprint": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 37, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 3, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 3, "thread_has_comment_chain": 1, "comment_chain_links_commit": 5, "comment_chain_touches_file": 3, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 26, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 3, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#3", "issue_number": "3", "quality_tiers": {"high_confidence": 3, "assumption_check": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-e49d49d25284c498", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"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: urakutours/pomocare\nThread: urakutours/pomocare#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: urakutours/pomocare\nThread: urakutours/pomocare#3\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#3\nRepo: urakutours/pomocare\nIssue/PR number: 3\nGraph consistency label: supported_by_high_confidence_link\nNodes: 26\nEdges: 37\nNode types: {'link_quality': 6, 'commit': 5, 'pr_file': 3, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'comment_chain_links_commit': 5, 'thread_touches_file': 3, 'comment_chain_touches_file': 3, 'issue_chain_touches_file': 3, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'bug_fix': 5, 'ui_or_frontend': 3, 'claimed_resolved_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "graph-query-motif_query-0f8c72d806cba53e", "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": "urakutours/pomocare", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: urakutours/pomocare"}, "properties": {"repobilityId": 404886, "scanner": "foundry_dataset", "fingerprint": "0b4b49a287cbfbdef0d32449227fcb0243eb2d65a574cdfc25b25045fe0b86e6", "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, "ui_or_frontend": 4, "api_integration_gap": 1, "generated_provenance": 1, "partial blueprint fit": 2, "ci_pending_or_incomplete": 1, "mostly follows blueprint": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 39, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 4, "comment_chain_has_ci": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 4, "thread_has_comment_chain": 1, "comment_chain_links_commit": 3, "comment_chain_touches_file": 4, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 26, "node_types": {"repo": 1, "commit": 3, "thread": 1, "comment": 1, "pr_file": 4, "alignment": 3, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#11", "issue_number": "11", "quality_tiers": {"high_confidence": 3, "assumption_check": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-ccf152700506b696", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"ui_or_frontend": 16}}, "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: urakutours/pomocare\nThread: urakutours/pomocare#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: urakutours/pomocare\nThread: urakutours/pomocare#11\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#11\nRepo: urakutours/pomocare\nIssue/PR number: 11\nGraph consistency label: supported_by_high_confidence_link\nNodes: 26\nEdges: 39\nNode types: {'link_quality': 6, 'pr_file': 4, 'commit': 3, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'thread_touches_file': 4, 'comment_chain_touches_file': 4, 'issue_chain_touches_file': 4, 'comment_chain_links_commit': 3, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_has_ci': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 4, 'claimed_resolved_unverified': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'generated_provenance': 1, 'ci_pending_or_incomplete': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 3}\nCI labels: {'ci_pending_or_incomplete': 2}\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/urakutours/pomocare", "source_id": "graph-query-motif_query-a560ac0b797dcfd4", "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": "urakutours/pomocare", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_blueprint_gap", "level": "warning", "message": {"text": "Foundry mined blueprint gap alignment: urakutours/pomocare"}, "properties": {"repobilityId": 404885, "scanner": "foundry_dataset", "fingerprint": "e9293d9223d983819912dcc91b8625b4ee561b2edb8cfb1fbaf99ae27f40c814", "category": "tech_debt", "severity": "medium", "confidence": 0.7, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Imported from mined Foundry/Fable5 evidence with real GitHub/source provenance. Review source_id before acting.", "evidence": {"meta": {"kind": "graph_query_record", "title": "Human feedback aligned with blueprint or architecture gaps", "intent": "Curriculum-gap examples connecting issue threads to helicopter-view gaps.", "labels": {"ui_or_frontend": 13, "source_or_other": 1, "ui_workflow_gap": 1, "partial blueprint fit": 2, "mostly follows blueprint": 1, "issue_or_pull_request_thread": 1, "not_resolved_or_not_observed": 3, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_no_linked_fix": 1, "thread_has_human_issue_without_fix_context": 2}, "source": "graph_query_export", "motif_id": "blueprint_gap_alignment", "outcomes": {"not_resolved_or_not_observed": 6}, "polarity": "mixed", "query_id": "blueprint_gap_alignment", "severity": "medium", "ci_labels": {}, "synthetic": false, "edge_count": 61, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 14, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 12, "thread_has_comment_chain": 1, "comment_chain_touches_file": 12, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 32, "node_types": {"repo": 1, "thread": 1, "comment": 1, "pr_file": 14, "alignment": 3, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#1", "issue_number": "1", "quality_tiers": {"unresolved": 3, "assumption_check": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "curriculum_gap", "source_motif_id": "graph-pattern-motif-thread-cfbe621f4d7f5659", "graph_gold_label": "assumption_check", "changed_file_labels": {"ui_or_frontend": 52, "source_or_other": 4}}, "text": "Graph query export: Human feedback aligned with blueprint or architecture gaps\nQuery id: blueprint_gap_alignment\nQuery type: motif_query\nIntent: Curriculum-gap examples connecting issue threads to helicopter-view gaps.\nMotif: blueprint_gap_alignment\nTraining usage: curriculum_gap\nGraph gold label: assumption_check\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#1\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: urakutours/pomocare\nThread: urakutours/pomocare#1\nGraph gold label: assumption_check\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#1\nRepo: urakutours/pomocare\nIssue/PR number: 1\nGraph consistency label: assumption_check\nNodes: 32\nEdges: 61\nNode types: {'pr_file': 14, 'link_quality': 6, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 14, 'comment_chain_touches_file': 12, 'issue_chain_touches_file': 12, 'chain_has_link_quality': 6, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, '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': 13, 'not_resolved_or_not_observed': 3, 'thread_has_human_issue_without_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'ui_workflow_gap': 1, 'source_or_other': 1, 'human_reported_issue_no_linked_fix': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'not_resolved_or_not_observed': 6}\nQuality tiers: {'unresolved': 3, 'assumption_check': 3}\nCI labels: {}\nCurriculum targets:\n- Use helicopter-view architecture/schema/design evidence beside issue threads.\n- Teach models to compare requested product class against implementation layers.\nAssumption checks:\n- Which blueprint layer is absent: frontend, API, data, auth, tests, or deployment?\n- Does human feedback confirm the same architectural gap?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "graph-query-motif_query-33a0934ab97d2ca4", "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": "urakutours/pomocare", "source_dataset": "graph_queries/blueprint_gap_alignment", "training_usage": "curriculum_gap"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: urakutours/pomocare"}, "properties": {"repobilityId": 383509, "scanner": "foundry_dataset", "fingerprint": "6a10d6592de26e5881c411404c49999f48aed89f3c64dd952fad3f03143f1a28", "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": "urakutours/pomocare#9", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "9", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "urakutours/pomocare", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-6fc9dc59c40a8875", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 4, "routes_api": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 4, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 4}, "linked_commit_count": 3, "helicopter_view_count": 2, "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": 1, "verification_artifact_count": 1, "design_schema_api_artifact_count": 3}, "text": "Comment chain pattern product: assumption_checks\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#9\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: urakutours/pomocare#9\nRepo: urakutours/pomocare\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\nChanged file count: 4\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 4}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-ef1df6a6a414cf6e\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/urakutours/pomocare/pull/9\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: urakutours/pomocare\\nAuthor: urakutours (User)\\nURL: https://github.com/urakutours/pomocare/pull/9\\nTitle: chore(release): \u5e83\u544aOFF + versionCode 4 (1.0.3) \u2014 \u5185\u90e8\u30c6\u30b9\u30c8\u5411\u3051\\nBody:\\n## \u6982\u8981\\nAndroid \u5185\u90e8\u30c6\u30b9\u30c8\u5411\u3051\u306e release-prep\u3002\\n\\n- **\u5e83\u544aOFF**: kill-switch `ADS_ENABLED=false`\uff08`src/config/features.ts`\uff09\u3067 AdMob/Amazon \u30d0\u30ca\u30fc\u975e\u8868\u793a + AdMob SDK \u306e init \u3082\u30ac\u30fc\u30c9\u3002\u53ce\u76ca\u5316\u306f\u5f8c\u65e5\uff08\u5fa9\u5e30\u624b\u9806\u306f\u30b3\u30e1\u30f3\u30c8\u306b\u660e\u8a18\uff09\u3002Daisuke \u78ba\u5b9a\u65b9\u91dd\u3002\\n- **version bump**: versionCode 3\u21924 / versionName 1.0.2\u21921.0.3\uff08Play \u306e\u65e2\u5b58 vc3 \u3088\u308a\u4e0a\uff09\u3002\\n\\n\u691c\u8a3c: build/lint green\u3002Play \u72b6\u614b\u78ba\u8a8d(1b)\u3067\u300cCapacitor \u30a2\u30d7\u30ea(com.pomocare.app)\u30fbTWA \u3068\u3082\u672c\u756a\u672a\u516c\u958b\u30fb\u5b9f\u30e6\u30fc\u30b6\u30fc0\u300d\u3092\u78ba\u8a8d\u6e08\u307f \u2192 \u79fb\u884c\u554f\u984c\u306a\u3057\u3001Capacitor \u30a2\u30d7\u30ea\u3092\u5185\u90e8\u30c6\u30b9\u30c8\u3078\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-2fdbf5655c6ee15d\",\n    \"filename\": \"android/app/build.gradle\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 2,\n    \"deletions\": 2,\n    \"changes\": 4,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/707f5f867b2175cb8e2aeb66a17a96ac3cd808c0/android%2Fapp%2Fbuild.gradle\"\n  },\n  {\n    \"id\": \"github-pr-file-file-ff84ce06a3f1e130\",\n    \"filename\": \"src/components/ads/AdBanner.tsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 4,\n    \"deletions\": 0,\n    \"changes\": 4,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/707f5f867b2175cb8e2aeb66a17a96ac3cd808c0/src%2Fcomponents%2Fads%2FAdBanner.tsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-1dff8d0b4183371e\",\n    \"filename\": \"src/config/features.ts\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 10,\n    \"deletions\": 0,\n    \"changes\": 10,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/707f5f867b2175cb8e2aeb66a17a96ac3cd808c0/src%2Fconfig%2Ffeatures.ts\"\n  },\n  {\n    \"id\": \"github-pr-file-file-53abfcebccb24a29\",\n    \"filename\": \"src/main.tsx\",\n    \"label\": \"ui_\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "comment-chain-pattern-assumption_checks-db7221a28d84adff", "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": "urakutours/pomocare", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: urakutours/pomocare"}, "properties": {"repobilityId": 383508, "scanner": "foundry_dataset", "fingerprint": "ece6343a80192396c71d19f2c3b150c81223039b0e9c7c78e46abfd4182b4257", "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": "urakutours/pomocare#8", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "8", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "urakutours/pomocare", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-5773c22ee23fc111", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 4, "routes_api": 3}, "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": 4, "helicopter_view_count": 2, "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": 1, "design_schema_api_artifact_count": 3}, "text": "Comment chain pattern product: assumption_checks\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#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_high_confidence\nChain evidence:\nIssue/PR evidence chain: urakutours/pomocare#8\nRepo: urakutours/pomocare\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 4\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-54d32fc1e260cd60\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/urakutours/pomocare/pull/8\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: urakutours/pomocare\\nAuthor: urakutours (User)\\nURL: https://github.com/urakutours/pomocare/pull/8\\nTitle: fix(alarm): Web/PWA \u524d\u9762\u30a2\u30e9\u30fc\u30e0\u3092\u6c38\u7d9a primed \u8981\u7d20\u3067\u78ba\u5b9f\u306b\u9cf4\u3089\u3059\\nBody:\\n## \u6982\u8981\uff08sprint: pomocare \u97f3\u30fb\u901a\u77e5\u30ea\u30d5\u30ec\u30c3\u30b7\u30e5 / \u30bf\u30b9\u30af 3-B\u300cWeb \u306e A\u300d\uff09\\n\\nWeb/PWA\u30fbiOS Safari \u3067\u3001\u30bf\u30a4\u30de\u30fc\u7d42\u4e86\u30a2\u30e9\u30fc\u30e0\u306e **\u524d\u9762 in-app \u97f3\u304c AudioContext suspended \u306e\u3068\u304d\u7121\u97f3**\u306b\u306a\u308b\u554f\u984c\u3092\u4fee\u6b63\u3002Web/PWA browser-side \u306e\u307f\u306e\u5909\u66f4\u3067\u3001**Android/native \u7d4c\u8def\u306f\u4e00\u5207\u89e6\u3063\u3066\u3044\u306a\u3044**\u3002\\n\\n## \u771f\u56e0\uff08\u30d6\u30e9\u30a6\u30b6\u3067\u5b9f\u8a3c\uff09\\n\\n\u30bf\u30a4\u30de\u30fc\u7d42\u4e86\u306f user gesture \u3092\u6301\u305f\u306a\u3044 timer callback \u7531\u6765\u3002AudioContext \u304c suspended \u3067\u304b\u3064 `resume()` \u3067\u5fa9\u5e30\u3067\u304d\u306a\u3044\uff08iOS \u306e\u524d\u9762\u5931\u6557\u6761\u4ef6\uff09\u3068\u304d\u3001\u65e7 fallback \u306f\u6bce\u56de **`new Audio(src)` \u306e\u65b0\u898f\u8981\u7d20**\u3092 `play()` \u3057\u3066\u3044\u305f\u3002iOS \u306f\u300cgesture \u3067\u4e00\u5ea6 unlock \u3057\u305f\u8981\u7d20\u300d\u306e\u518d\u751f\u306f\u5f8c\u304b\u3089\uff08gesture \u7121\u3057\u3067\u3082\uff09\u8a31\u53ef\u3059\u308b\u304c\u3001**\u65b0\u898f\u8981\u7d20\u306f\u30d6\u30ed\u30c3\u30af**\u3059\u308b\u3002`unlockHtmlAudio()` \u306f throwaway \u8981\u7d20\u3092 unlock \u3057\u3066\u304a\u308a\u3001\u305d\u306e\u89e3\u9664\u306f\u65b0\u898f\u8981\u7d20\u306b\u4f1d\u64ad\u3057\u306a\u3044\u305f\u3081\u7121\u97f3\u3060\u3063\u305f\u3002\\n\\n\u5b9f\u8a3c\uff08dev server / Chrome devtools\u3001`preview_eval` \u3067 AudioContext lifecycle \u3092\u89b3\u6e2c\uff09:\\n- context **running** \u2192 `createBufferSource().start()` \u767a\u706b\uff08Web Audio \u518d\u751f\uff09\\n- context **suspended + resume \u5fa9\u5e30\u4e0d\u80fd** \u2192 Web Audio \u7121\u97f3 + fallback \u304c **fresh `new Audio()`** \u3092\u751f\u6210 = iOS \u3067\u30d6\u30ed\u30c3\u30af\u3055\u308c\u308b\u7d4c\u8def\\n\\n## \u4fee\u6b63\\n\\n- \u5358\u4e00\u306e**\u6c38\u7d9a `HTMLAudioElement`\uff08`primedAudio`\uff09** \u3092 START \u30b8\u30a7\u30b9\u30c1\u30e3\u4e2d\u306b\u4e00\u5ea6 `play()` \u3057\u3066 unlock \u3057\u3001\u4ee5\u5f8c\u305d\u306e**\u540c\u4e00\u8981\u7d20\u3092\u4f7f\u3044\u56de\u3059**\uff08`getPrimedAudio()` / `playAlarmViaPrimedAudio()`\uff09\u3002iOS \u306f ge\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-1cd5edb99227fa89\",\n    \"filename\": \"src/utils/alarm.ts\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 77,\n    \"deletions\": 48,\n    \"changes\": 125,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/a995c5e6822c67831dbf4c6a5d4a63fff5465635/src%2Futils%2Falarm.ts\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-f60b21d8194c164e\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: urakutours/pomocare\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"sourc\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "comment-chain-pattern-assumption_checks-bd94cda1e2c3fdb2", "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": "urakutours/pomocare", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: urakutours/pomocare"}, "properties": {"repobilityId": 383507, "scanner": "foundry_dataset", "fingerprint": "33457dcd64b0ffb3eabc3e7f89530e1818f74d65d86317f6f4091a53d13b9a57", "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": "urakutours/pomocare#7", "human_labels": ["agent_instruction_gap", "dependency_or_build", "docs_or_claims", "source_or_other", "ui_or_frontend"], "issue_number": "7", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "urakutours/pomocare", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-145ed37a49d06afd", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 4, "routes_api": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 61, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"docs_or_claims": 2, "ui_or_frontend": 35, "source_or_other": 22, "dependency_or_build": 2}, "linked_commit_count": 2, "helicopter_view_count": 2, "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": 1, "design_schema_api_artifact_count": 3}, "text": "Comment chain pattern product: assumption_checks\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#7\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence\nChain evidence:\nIssue/PR evidence chain: urakutours/pomocare#7\nRepo: urakutours/pomocare\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: 61\nLabels: {'agent_instruction_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'docs_or_claims': 2, 'ui_or_frontend': 35, 'source_or_other': 22, 'dependency_or_build': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-6c8b2c95a400f88d\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/urakutours/pomocare/pull/7\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: urakutours/pomocare\\nAuthor: urakutours (User)\\nURL: https://github.com/urakutours/pomocare/pull/7\\nTitle: feat(alarm): exact-alarm \u901a\u77e5\u306b\u4f5c\u308a\u76f4\u3057 + \u65e7\u7d4c\u8def\u4e00\u6383 + \u65b04\u97f3\\nBody:\\n## \u6982\u8981\\nAndroid \u306e\u30bf\u30a4\u30de\u30fc\u7d42\u4e86\u30a2\u30e9\u30fc\u30e0\u3092 **USE_EXACT_ALARM + LocalNotifications \u306e OS \u4e88\u7d04\u901a\u77e5**\u306b\u4f5c\u308a\u76f4\u3057\u3001\u753b\u9762\u30aa\u30d5\u30fb\u30d0\u30c3\u30af\u30b0\u30e9\u30a6\u30f3\u30c9\u30fbkill \u3067\u3082\u5b9a\u523b\u767a\u706b\u3055\u305b\u308b\u3002\u5bfe\u51e6\u7642\u6cd5\u7684\u306b\u7a4d\u307f\u4e0a\u304c\u3063\u305f channel \u4e8c\u8ef8 / \u591a\u6bb5 fallback / \u5373\u6642+\u4e88\u7d04\u4e8c\u7cfb\u7d71\u3092 **AlarmScheduler \u85841IF\uff08Native/Web 2\u5b9f\u88c5\uff09**\u306b\u7d71\u5408\u3057\u65e7\u7d4c\u8def\u3092\u4e00\u6383\u3002\u65e7 synth4 \u3092\u65b04\u97f3\u306b\u7f6e\u63db\u3002\\n\\n## \u4e3b\u306a\u5909\u66f4\\n- **core**: USE_EXACT_ALARM \u3067\u5168\u30e6\u30fc\u30b6\u30fc exact \u767a\u706b\uff08\u7aef\u672b\u300c\u30a2\u30e9\u30fc\u30e0\u3068\u30ea\u30de\u30a4\u30f3\u30c0\u30fc\u300dOFF \u3067\u3082 ~0-2s\uff09\\n- AlarmScheduler \u85841IF + AlarmOverlay (`createPortal`) \u3067\u524d\u9762 OS\u901a\u77e5 / preview / screen-off \u306e tap-dismiss\\n- \u901a\u77e5 lifecycle\uff08\u56fa\u5b9a id + autoCancel + removeAllDeliveredNotifications\uff09/ preview \u3092 Web Audio \u5316\\n- \u9577\u5c3a\u97f3 classic/gentle/soft \u3092 MP3 \u5316\uff08Base64 \u7d041MB \u524a\u9664\uff09+ \u65b04\u97f3 windchime/canon/boxing/cuckoo \u306b\u7f6e\u63db\u3001\u901a\u77e5 channel \u3092 **v3 \u79fb\u884c**\\n- AlarmChannel \u4e8c\u8ef8 / repeat UI \u5ec3\u6b62\uff08repeat \u306f @deprecated\u30fb\u5f8c\u65b9\u4e92\u63db read\uff09\u3001vibration \u3092 off/always \u306e 2\u629e\u5316\\n- **fix**: \u30bf\u30a4\u30de\u30fc\u5b8c\u4e86\u5206\u5c90\u304c\u767a\u706b\u76f4\u5f8c\u306e\u901a\u77e5\u3092 cancel \u3057\u3066\u7121\u97f3\u5316\u3057\u3066\u3044\u305f\u30d0\u30b0\u3092\u9664\u53bb\\n- Web\u30fbiOS = \u30d5\u30a9\u30a2\u30b0\u30e9\u30a6\u30f3\u30c9\u9650\u5b9a\u3092\u4ed5\u69d8\u660e\u6587\u5316\uff08`CLAUDE.md \u00a78`\uff09\\n\\n## \u691c\u8a3c\\n- code-reviewer \u30ec\u30d3\u30e5\u30fc **Critical 0**\uff08P0/exact/dismiss \u975e\u56de\u5e30\u30fbchannelId\u2194sound \u6574\u5408\u30fb\u5f8c\u65b9\u4e92\u63db\uff09\\n- **Samsung S22 / One UI 8.0 / Android 16 \u3067 fresh-install + adb/l\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-ac5d5533b79af1a6\",\n    \"filename\": \"CLAUDE.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 37,\n    \"deletions\": 10,\n    \"changes\": 47,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/6b5e774d9755e154e073412005a721ff9a160358/CLAUDE.md\"\n  },\n  {\n    \"id\": \"github-pr-file-file-d84e3410ddb6d994\",\n    \"filename\": \"android/app/src/main/AndroidManifest.xml\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 5,\n    \"deletions\": 0,\n    \"changes\": 5,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/6b5e774d9755e154\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "comment-chain-pattern-assumption_checks-dd2c39fc09f4b301", "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": "urakutours/pomocare", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: urakutours/pomocare"}, "properties": {"repobilityId": 383506, "scanner": "foundry_dataset", "fingerprint": "4cafa682faba3bf572da721cedeb0904e4d821fe7f54ecb43a33d6266c7693f2", "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": "urakutours/pomocare#5", "human_labels": ["api_integration_gap", "source_or_other"], "issue_number": "5", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "urakutours/pomocare", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-5528b7098f5e3220", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 4, "routes_api": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 1, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 1}, "linked_commit_count": 2, "helicopter_view_count": 2, "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": 1, "design_schema_api_artifact_count": 3}, "text": "Comment chain pattern product: assumption_checks\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#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_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: urakutours/pomocare#5\nRepo: urakutours/pomocare\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: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-b85184c479519cd2\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/urakutours/pomocare/pull/5\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: urakutours/pomocare\\nAuthor: urakutours (User)\\nURL: https://github.com/urakutours/pomocare/pull/5\\nTitle: fix(wrangler): explicit empty crons array so Cloudflare actually drops the trigger\\nBody:\\n## \u75c7\u72b6\\n\\nPR [#4](https://github.com/urakutours/pomocare/pull/4) \u3067 \\\\`[triggers] crons = [\\\\\\\"* * * * *\\\\\\\"]\\\\` \u30d6\u30ed\u30c3\u30af\u3092 wrangler.toml \u304b\u3089\u524a\u9664\u3057\u3066 \\\\`wrangler deploy\\\\` (4.78.0) \u3092\u5b9f\u884c\u3057\u305f\u304c\u3001Cloudflare \u30c0\u30c3\u30b7\u30e5\u30dc\u30fc\u30c9\u4e0a\u306b\u306f\u65e7 cron \\\\`* * * * *\\\\` \u304c **\u6b8b\u3063\u305f\u307e\u307e**\u3060\u3063\u305f\uff08Daisuke \u30b9\u30af\u30b7\u30e7\u3067\u78ba\u8a8d\uff09\u3002Neon \u306e\u6bce\u5206 polling \u304c\u7d99\u7d9a\u4e2d\u3067\u3001\u30b3\u30b9\u30c8\u524a\u6e1b\u52b9\u679c\u304c\u767a\u52d5\u3057\u3066\u3044\u306a\u3044\u3002\\n\\n## \u771f\u56e0\uff08\u30d0\u30b0\u3067\u306f\u306a\u304f\u4ed5\u69d8\uff09\\n\\nCloudflare \u516c\u5f0f\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8 [Cron Triggers](https://developers.cloudflare.com/workers/configuration/cron-triggers/) \u3088\u308a:\\n\\n> If the \\\\`triggers\\\\` or \\\\`crons\\\\` property are **undefined** then the currently deployed Cron Triggers are **left in-place**.\\n> To disable a Cron Trigger, set \\\\`crons = []\\\\`. Commenting out the crons key will not disable a Cron Trigger.\\n\\nwrangler \u306f\u300ctriggers \u30bb\u30af\u30b7\u30e7\u30f3\u672a\u5b9a\u7fa9 = \u65e2\u5b58 trigger \u89e6\u3089\u305a\u300d\u3068\u89e3\u91c8\u3059\u308b\u4ed5\u69d8\u3002**\u524a\u9664\u306b\u306f\u7a7a\u914d\u5217\u3067\u306e\u660e\u793a\u7684\u306a\u4e0a\u66f8\u304d\u304c\u5fc5\u9808**\u3002\\n\\n## \u4fee\u6b63\\n\\n\\\\`workers/wrangler.toml\\\\` \u672b\u5c3e\u306b\u8ffd\u52a0:\\n\\n\\\\`\\\\`\\\\`toml\\n[triggers]\\ncrons = []\\n\\\\`\\\\`\\\\`\\n\\n\u610f\u56f3\u3092\u89e3\u8aac\u3059\u308b\u30b3\u30e1\u30f3\u30c8\u3082\u540c\u68b1\uff08\u5f8c\u304b\u3089\u898b\u305f\u3068\u304d\u306b\u300c\u306a\u305c\u7a7a\u914d\u5217?\u300d\u3068\u6df7\u4e71\u3057\u306a\u3044\u3088\u3046\uff09\u3002\\n\\n## \u691c\u8a3c\\n\\n- [x] \\\\`wrangler deploy --dry-run\\\\` PASS\u3001\u30a8\u30e9\u30fc\u306a\u3057\\n- [ ] Daisuke \u304c m\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-385d8084cc2bba6f\",\n    \"filename\": \"workers/wrangler.toml\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 11,\n    \"deletions\": 0,\n    \"changes\": 11,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/190c769ab2f79f485eb7f0813a727e0e07771db9/workers%2Fwrangler.toml\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-6a90142e07320f18\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: urakutours/pomocare\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\"\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "comment-chain-pattern-assumption_checks-9bd0ed0ddd05b6bf", "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": "urakutours/pomocare", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: urakutours/pomocare"}, "properties": {"repobilityId": 383505, "scanner": "foundry_dataset", "fingerprint": "e1cbd6efbf779e2e2b548358060cb9f152aa088200178da449c4e95e67cb3619", "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": "urakutours/pomocare#4", "human_labels": ["api_or_backend", "docs_or_claims", "schema_or_data", "security_auth_secret", "source_or_other", "ui_or_frontend"], "issue_number": "4", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "urakutours/pomocare", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-8a4e74a9c01d0e6e", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 4, "routes_api": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 8, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"api_or_backend": 2, "docs_or_claims": 1, "schema_or_data": 1, "ui_or_frontend": 3, "source_or_other": 1}, "linked_commit_count": 5, "helicopter_view_count": 2, "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": 1, "design_schema_api_artifact_count": 3}, "text": "Comment chain pattern product: assumption_checks\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#4\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: urakutours/pomocare#4\nRepo: urakutours/pomocare\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 8\nLabels: {'security_auth_secret': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'docs_or_claims': 1, 'schema_or_data': 1, 'ui_or_frontend': 3, 'api_or_backend': 2, 'source_or_other': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-c87ad907f77c1f31\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/urakutours/pomocare/pull/4\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: urakutours/pomocare\\nAuthor: urakutours (User)\\nURL: https://github.com/urakutours/pomocare/pull/4\\nTitle: chore(workers): drop cron + server Web Push pipeline (PR-B)\\nBody:\\n## Summary\\n\\nPR #2 (client SW direct notification) \u306e\u7d9a\u7de8\u3002Cloudflare Worker \u306e\u6bce\u5206 cron + `/schedule-notification` + `/send-push` \u3092\u524a\u9664\u3057\u3066 **Neon \u3092 24/7 \u3067\u8d77\u3053\u3057\u3066\u3044\u308b\u5143\u51f6\u3092\u505c\u6b62** \u3059\u308b\u3002\u30bf\u30d6\u3092\u958b\u3044\u305f\u307e\u307e\u4f7f\u3046 UX \u306f PR #2 \u3067 SW `registration.showNotification()` \u7d4c\u7531\u306b\u5207\u66ff\u6e08\u306a\u306e\u3067\u3001\u30b5\u30fc\u30d0\u30fc\u5074\u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u306f\u4e0d\u8981\u3002\\n\\n**\u72d9\u3044**: Neon Free tier \u306e\u6708 170 CU-hrs (100 \u4e0a\u9650\u306e 170%) \u2192 \u6708 1\u301c2 CU-hrs (99% \u524a\u6e1b)\u3002\\n\\n## Changes\\n\\n| \u30d5\u30a1\u30a4\u30eb | \u5909\u66f4 |\\n|---|---|\\n| `workers/wrangler.toml` | `[triggers] crons` \u30d6\u30ed\u30c3\u30af\u524a\u9664\u3002VAPID \u30b3\u30e1\u30f3\u30c8\u306f rollback \u671f\u9593 (\u301c2026-06-13) \u8aac\u660e\u4ed8\u304d\u3067\u6b8b\u7f6e |\\n| `workers/src/index.ts` | `handleScheduleNotification` / `handleSendPush` \u306e import\u3001route case\u3001`scheduled()` \u30cf\u30f3\u30c9\u30e9\u3092\u5168\u524a\u9664 |\\n| `workers/src/routes/send-push.ts` | \u524a\u9664 |\\n| `workers/src/routes/schedule-notification.ts` | \u524a\u9664 |\\n| `workers/src/lib/webpush.ts` | \u524a\u9664 (RFC 8291/8292 \u5b9f\u88c5\u3002\u552f\u4e00\u306e consumer \u3060\u3063\u305f send-push.ts \u3068\u904b\u547d\u3092\u5171\u306b\u3059\u308b) |\\n| `workers/src/types.ts` | `VAPID_*` env \u578b\u3068\u672a\u4f7f\u7528 `BETTER_AUTH_SECRET` \u3092\u524a\u9664 |\\n| `docs/external-config.md` | \u30eb\u30fc\u30c8\u8868\u3068 `wrangler secret put` \u306e\u7bc0\u3092\u66f4\u65b0\u3001VAPID \u306f legacy \u30ce\u30fc\u30c8\u306b\u5206\u96e2 |\\n| `supa\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-b01d24d3b4674241\",\n    \"filename\": \"docs/external-config.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 7,\n    \"deletions\": 5,\n    \"changes\": 12,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/6e0444bb73d0933e6714da119313976a397b28cc/docs%2Fexternal-config.md\"\n  },\n  {\n    \"id\": \"github-pr-file-file-00e8662e7fb635d9\",\n    \"filename\": \"supabase/migrations/20260513_drop_push_notifications.sql\",\n    \"label\": \"schema_or_data\",\n    \"status\": \"added\",\n    \"additions\": 33,\n    \"deletions\": 0,\n    \"ch\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "comment-chain-pattern-assumption_checks-a2aa37d41b065203", "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": "urakutours/pomocare", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: urakutours/pomocare"}, "properties": {"repobilityId": 383504, "scanner": "foundry_dataset", "fingerprint": "98d92dcee45021f9fda93c9e1f5995dff8432f776e5fe49461bb7cb063c67ae6", "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": "urakutours/pomocare#3", "human_labels": ["api_integration_gap", "ui_or_frontend"], "issue_number": "3", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.895, "repo_full_name": "urakutours/pomocare", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-3f037472cafd52aa", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 4, "routes_api": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 3, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 3}, "linked_commit_count": 5, "helicopter_view_count": 2, "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": 1, "design_schema_api_artifact_count": 3}, "text": "Comment chain pattern product: assumption_checks\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#3\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: urakutours/pomocare#3\nRepo: urakutours/pomocare\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 3\nLabels: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 3}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-e732b581a2fa46f9\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/urakutours/pomocare/pull/3\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: urakutours/pomocare\\nAuthor: urakutours (User)\\nURL: https://github.com/urakutours/pomocare/pull/3\\nTitle: fix(alarm): downgrade saved channel='notification' to 'media' on Web\\nBody:\\n## \u75c7\u72b6\\n\\nWindows Chrome PWA \u3067\u8a2d\u5b9a\u30d1\u30cd\u30eb\u306e \u25b6 \u30d7\u30ec\u30d3\u30e5\u30fc\u3092\u62bc\u3057\u3066\u3082\u30a2\u30e9\u30fc\u30e0\u97f3\u304c\u9cf4\u3089\u306a\u3044\u300225 \u5206\u30bf\u30a4\u30de\u30fc\u5b8c\u4e86\u6642\u3082 Web \u4e0a\u3067\u306f\u7121\u97f3\u3060\u3063\u305f\u53ef\u80fd\u6027\u304c\u9ad8\u3044\u3002\\n\\n## \u6839\u672c\u539f\u56e0\\n\\n\\\\`playAlarm()\\\\` \u306e Web \u7d4c\u8def\u3067 \\\\`channel === 'notification'\\\\` \u304c \\\\`playViaNotificationChannel()\\\\` \u306b\u6d41\u308c\u3001\\\\`new Notification('Timer Complete', { silent: false })\\\\` \u3092\u767a\u706b\u3059\u308b\u8a2d\u8a08\u3060\u3063\u305f\u3002\\n\\nWindows / macOS \u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u3067\u306f OS \u306e\u901a\u77e5\u97f3\u8a2d\u5b9a (Focus Assist / Do Not Disturb / \u901a\u77e5\u97f3 OFF) \u306b\u4f9d\u5b58\u3057\u3066**\u5b8c\u5168\u306b\u7121\u97f3\u306b\u306a\u308b\u30b1\u30fc\u30b9\u304c\u591a\u304f**\u3001PWA \u3068\u3057\u3066\u30a2\u30e9\u30fc\u30e0\u306e\u5f79\u3092\u679c\u305f\u305b\u3066\u3044\u306a\u304b\u3063\u305f\u3002\\n\\nUI \u4e0a\u306f \\\\`SettingsPanel.tsx\\\\` \u306e \\\\`isNative()\\\\` \u30ac\u30fc\u30c9\u3067 Web \u30e6\u30fc\u30b6\u30fc\u306b channel \u5207\u66ff\u30bb\u30ec\u30af\u30bf\u3092\u975e\u8868\u793a\u306b\u3057\u3066\u3044\u305f\u304c\u3001Android Capacitor \u7248\u3067 \\\\`channel: 'notification'\\\\` \u3092\u4fdd\u5b58\u3057\u305f\u30a2\u30ab\u30a6\u30f3\u30c8\u304c Web \u304b\u3089\u30ed\u30b0\u30a4\u30f3\u3059\u308b\u3068\u53e4\u3044\u5024\u304c\u305d\u306e\u307e\u307e \\\\`playAlarm\\\\` \u306b\u6d41\u308c\u8fbc\u307f\u3001\u4e0a\u8a18\u306e\u7121\u97f3\u30d1\u30b9\u3092\u901a\u3063\u3066\u3044\u305f\u3002\\n\\n### \u5b9f\u6a5f\u518d\u73fe (Daisuke PC, Chrome 147)\\n\\n\u30ed\u30fc\u30ab\u30eb settings cache: \\\\`alarm.channel = \\\"notification\\\"\\\\`\u3001Sound = gentle\u3001Volume = 40\\n- \u4fee\u6b63\u524d: \u25b6 \u30af\u30ea\u30c3\u30af \u2192 AudioContext \u4f5c\u6210\u30a4\u30d9\u30f3\u30c8 0\u3001\\\\`new Notification(...)\\\\` 3 \u4ef6\u306e\u307f dispatch (media path \u672a\u5230\u9054)\\n- \u4fee\u6b63\u5f8c: \u25b6 \u30af\u30ea\u30c3\u30af \u2192 AudioContext \u4f5c\u6210 + decodeAudioData 7 \u79d2 WAV \u30c7\u30b3\u30fc\u30c9\u6210\u529f \u2192 \u97f3\u304c\u51fa\u308b\\n\\n(Claude_in_Chrome MCP \u3067 AudioContext / Notification \u306e\u4e21\u65b9\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-b9b9ff93128f3dae\",\n    \"filename\": \"src/components/settings/SettingsPanel.tsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 13,\n    \"deletions\": 8,\n    \"changes\": 21,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/488d2e8c58e6a00071802d5a153c0007f02e2736/src%2Fcomponents%2Fsettings%2FSettingsPanel.tsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-e02cb640dc731ea8\",\n    \"filename\": \"src/config/affiliates.ts\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 2,\n    \"deletions\": 2,\n    \"changes\": 4,\n    \"blob_url\": \"https://github.com/urakut\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "comment-chain-pattern-assumption_checks-bedeb792f72a2948", "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": "urakutours/pomocare", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: urakutours/pomocare"}, "properties": {"repobilityId": 383503, "scanner": "foundry_dataset", "fingerprint": "88abe34d3ade41b5df25007edfc6639827f369b452ddf23b1fa8f02816bcc6cf", "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": "urakutours/pomocare#2", "human_labels": ["security_auth_secret", "ui_or_frontend"], "issue_number": "2", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "urakutours/pomocare", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-aa5a241429f28858", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 4, "routes_api": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 7, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 7}, "linked_commit_count": 5, "helicopter_view_count": 2, "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": 1, "design_schema_api_artifact_count": 3}, "text": "Comment chain pattern product: assumption_checks\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#2\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: urakutours/pomocare#2\nRepo: urakutours/pomocare\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 5\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 7\nLabels: {'security_auth_secret': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 7}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-b83301c4664b02d7\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/urakutours/pomocare/pull/2\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: urakutours/pomocare\\nAuthor: urakutours (User)\\nURL: https://github.com/urakutours/pomocare/pull/2\\nTitle: refactor(notifications): client-side SW notification + drop 5s polling (PR-A)\\nBody:\\n## Summary\\n\\n- \u30bf\u30a4\u30de\u30fc\u5b8c\u4e86\u901a\u77e5\u3092 Service Worker `registration.showNotification()` \u306e client \u76f4\u63a5\u547c\u3073\u51fa\u3057\u306b\u7f6e\u63db\u3002Worker `/schedule-notification` POST \u7d4c\u8def\u3092\u5168\u5ec3\\n- `AuthContext` \u306e 5 \u79d2\u9593\u9694 `syncUser` polling \u3092\u64a4\u5ec3\u3002auth \u72b6\u614b\u53cd\u6620\u306f\u65e2\u5b58\u306e visibility handler / storage event / deep link \u7d4c\u8def\u306b\u4e00\u672c\u5316\\n- \u3053\u308c\u306f 2 PR \u69cb\u6210\u306e **\u7b2c 1 \u6bb5 (PR-A: client \u81ea\u7acb\u5316)**\u3002Worker / cron / DB drop \u306f **PR-B** \u3067\u5bfe\u51e6\uff08PR-A merge & preview \u691c\u8a3c PASS \u5f8c\u306b\u7740\u624b\uff09\\n\\n## Why\\n\\npomocare \u306e Neon DB \u304c 13 \u65e5\u3067 74 CU-hrs (\u6708\u63db\u7b97 ~170, Free tier \u306e 170%) \u3092\u6d88\u8cbb\u3002\u771f\u56e0\u306f `workers/wrangler.toml` \u306e `crons = [\\\"* * * * *\\\"]` \u304c\u6bce\u5206 `scheduled_notifications` \u3092 SELECT \u3057\u3001auto-suspend \u3092 24/7 \u3067\u963b\u6b62\u3057\u3066\u3044\u305f\u3002\u30bf\u30a4\u30de\u30fc\u672c\u4f53\u306f client wall-clock \u3067\u52d5\u304f\u306e\u3067\u3001\u30b5\u30fc\u30d0\u30fc push \u306f\u5b9f\u8cea\u300c\u30bf\u30d6\u3092\u9589\u3058\u3066\u3044\u305f\u5834\u5408\u306e\u30d5\u30a9\u30ed\u30fc\u30a2\u30c3\u30d7\u300d\u3060\u3051\u306e\u305f\u3081\u306b\u5b58\u5728\u3057\u3066\u3044\u305f\u3002\u300c\u4f5c\u696d\u4e2d\u3060\u304b\u3089\u30bf\u30d6\u306f\u958b\u3044\u3066\u3044\u308b\u300d\u524d\u63d0\u306b\u632f\u308a\u5207\u308a\u3001SW \u76f4\u63a5\u767a\u706b\u306b\u7d71\u4e00\u3059\u308b\u3002\\n\\nPlan: \\\\`~/.claude/plans/pomocare-zany-kahan.md\\\\`\\n\\n## \u5909\u66f4\u5185\u5bb9\\n\\n| \u30d5\u30a1\u30a4\u30eb | \u5909\u66f4 |\\n|---|---|\\n| \\\\`src/sw.ts\\\\` | \\\\`push\\\\` event listener \u524a\u9664\uff08\\\\`notificationclick\\\\` \u306f\u7dad\u6301\uff09 |\\n| \\\\`src/hooks/usePushNotification.ts\\\\` | \\\\`subscribe\\\\` / \\\\`scheduleNotification\\\\` / \\\\`\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-0a2b096c877ddcf6\",\n    \"filename\": \"src/App.tsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 30,\n    \"changes\": 33,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/ec99b685d620a5e8091b5b94edf45928fc1cc58d/src%2FApp.tsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-0062693435c1ab79\",\n    \"filename\": \"src/config/affiliates.ts\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 2,\n    \"deletions\": 2,\n    \"changes\": 4,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/ec99b685d620a5e8091b5b94edf45928fc1cc58d/src%2Fco\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "comment-chain-pattern-assumption_checks-aff81b419968e55b", "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": "urakutours/pomocare", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: urakutours/pomocare"}, "properties": {"repobilityId": 383502, "scanner": "foundry_dataset", "fingerprint": "6ebdd5119ded14e91277f132c06112db7a1634ba8a159d91b173130f95c0f0a3", "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": "urakutours/pomocare#12", "human_labels": ["security_auth_secret", "source_or_other"], "issue_number": "12", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "urakutours/pomocare", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-bf68c33286f96065", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 4, "routes_api": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 2, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"source_or_other": 2}, "linked_commit_count": 2, "helicopter_view_count": 2, "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": 1, "verification_artifact_count": 1, "design_schema_api_artifact_count": 3}, "text": "Comment chain pattern product: assumption_checks\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#12\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: urakutours/pomocare#12\nRepo: urakutours/pomocare\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 2\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\nChanged file count: 2\nLabels: {'security_auth_secret': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-7510d0d0bcf99a4e\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/urakutours/pomocare/pull/12\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: urakutours/pomocare\\nAuthor: urakutours (User)\\nURL: https://github.com/urakutours/pomocare/pull/12\\nTitle: chore(cleanup): supabase \u4e00\u6642\u30d5\u30a1\u30a4\u30eb ignore + CF account_id \u30d4\u30f3\u7559\u3081\\nBody:\\n## \u5185\u5bb9\uff08Play \u672c\u756a\u516c\u958b prereq \u30af\u30ea\u30fc\u30f3\u30a2\u30c3\u30d7 + \u69cb\u9020\u9632\u5fa1\uff09\\n- **`.gitignore`**: `supabase/.temp/` \u3092\u8ffd\u52a0\uff08\u63a5\u7d9a\u6587\u5b57\u5217\u3092\u542b\u307f\u3046\u308b\u65e7 Supabase CLI \u4e00\u6642\u30d5\u30a1\u30a4\u30eb\u306e\u8aa4\u30b3\u30df\u30c3\u30c8\u9632\u6b62\u3001security-reviewer Nit N-1\uff09\u3002\u30ed\u30fc\u30ab\u30eb\u306e `supabase/.temp/` \u3068 stale \u306a `C:/tmp/sb-token.txt`\uff08JWT\uff09\u306f\u524a\u9664\u6e08\u307f\u3002\\n- **`workers/wrangler.toml`**: top-level \u306b `account_id` \u3092\u660e\u793a\u30d4\u30f3\u7559\u3081\u3002\u672a\u6307\u5b9a\u3060\u3068\u8a8d\u8a3c account \u306e default \u306b\u843d\u3061\u3066\u8aa4 account \u3078\u306e deploy \u4e8b\u6545\u304c\u8d77\u304d\u3046\u308b\uff08CLAUDE.md\u300cCloudflare account \u5206\u96e2\u30fb\u78ba\u8a8d\u300d\u3001RecipeHub 2026-05-24 \u540c\u578b\u4e8b\u6545\u306e\u69cb\u9020\u9632\u5fa1\uff09\u3002\u5024 = whoami \u3068 Daisuke \u306e\u30c7\u30d7\u30ed\u30a4\u30a8\u30e9\u30fc path \u306e\u4e21\u65b9\u3067\u78ba\u8a8d\u3057\u305f urakutours account\u3002\\n\\n## \u95a2\u9023\u30af\u30ea\u30fc\u30f3\u30a2\u30c3\u30d7\uff08Daisuke \u5b9f\u65bd\u6e08\u307f\uff09\\n- \u65e7 Supabase \u30d7\u30ed\u30b8\u30a7\u30af\u30c8 `cjylcizaikyirdxkwpao`: dashboard \u78ba\u8a8d\u3067\u65e2\u306b\u524a\u9664\u6e08\u307f\uff08org=urakutours\u3001projects 0 \u4ef6\uff09\\n- Neon Auth \u30c6\u30b9\u30c8\u30a2\u30ab\u30a6\u30f3\u30c8 `okuyama@fukurino.com`: \u524a\u9664\u6e08\u307f\uff08C-2 \u306e\u6f0f\u6d29\u8cc7\u683c\u60c5\u5831\u3001live login \u3092\u7121\u52b9\u5316\uff09\\n- Supabase Personal Access Token\uff08`sbp_\u2026`\u3001stale never-expire\uff09: revoke \u6e08\u307f\\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-09417b273037df00\",\n    \"filename\": \".gitignore\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 0,\n    \"changes\": 3,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/3b09d4f0f75c458c6571860af23c6018fe38e1aa/.gitignore\"\n  },\n  {\n    \"id\": \"github-pr-file-file-de7fb03a2c33b697\",\n    \"filename\": \"workers/wrangler.toml\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 0,\n    \"changes\": 3,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/3b09d4f0f75c458c6571860af23c6018fe38e1aa/workers%2Fwrangler.toml\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-2bb5e66c42736f0f\"]\nSource graph evidence:\nSource evidence repo gra\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "comment-chain-pattern-assumption_checks-0f5b38b743ef9afb", "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": "urakutours/pomocare", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: urakutours/pomocare"}, "properties": {"repobilityId": 383501, "scanner": "foundry_dataset", "fingerprint": "2d82357d764dec177192e00aada505b7ef5b833c6800952e245314095874fecb", "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": "urakutours/pomocare#11", "human_labels": ["api_integration_gap", "ui_or_frontend"], "issue_number": "11", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "urakutours/pomocare", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-ec1ceba085a50116", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 4, "routes_api": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 4, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 4}, "linked_commit_count": 3, "helicopter_view_count": 2, "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": 1, "verification_artifact_count": 1, "design_schema_api_artifact_count": 3}, "text": "Comment chain pattern product: assumption_checks\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#11\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: urakutours/pomocare#11\nRepo: urakutours/pomocare\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\nChanged file count: 4\nLabels: {'api_integration_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'ui_or_frontend': 4}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-a047d01ba03592f3\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"api_integration_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/urakutours/pomocare/pull/11\",\n    \"text\": \"GitHub feedback: api_integration_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: urakutours/pomocare\\nAuthor: urakutours (User)\\nURL: https://github.com/urakutours/pomocare/pull/11\\nTitle: fix(payments): native \u3067 Stripe \u6c7a\u6e08\u5c0e\u7dda\u3092\u69cb\u9020\u7684\u306b\u5168\u6d88\u3057\uff08\u6d88\u8cbb\u5c02\u7528\u30a2\u30d7\u30ea\u5316\uff09\\nBody:\\n## \u80cc\u666f\\nGoogle Play \u672c\u756a\uff08\u88fd\u54c1\u7248\uff09\u516c\u958b\u8981\u4ef6\u3002web \u7248 \u2460 escalate \u3067 **Option A** \u304c\u78ba\u5b9a\uff08grand plan \u00a75 2026-06-13\uff09\u3002\\n\\nPlay \u306e\u300c\u6d88\u8cbb\u5c02\u7528\uff08consumption-only\uff09\u8a31\u5bb9\u300d\u306f\u3001**\u30a2\u30d7\u30ea\u5185\u304b\u3089\u8cfc\u5165\u3055\u305b\u306a\u3044\u30a2\u30d7\u30ea\u306b\u306e\u307f**\u4e0e\u3048\u3089\u308c\u308b\u3002Web \u306e Stripe \u8cfc\u5165\u3067\u66f4\u65b0\u3055\u308c\u305f `user_profiles.tier` \u3092 native \u306f\u300c\u6d88\u8cbb\u3059\u308b\u3060\u3051\u300d\u306a\u3089 compliant\uff08Netflix/Spotify \u578b\u306e\u67af\u308c\u305f\u30d1\u30bf\u30fc\u30f3\u3001\u30b3\u30f3\u30c6\u30f3\u30c4\u30ab\u30c6\u30b4\u30ea\u975e\u4f9d\u5b58\uff09\u3002\u305f\u3060\u3057 Stripe checkout/portal \u304c native \u3067 **1\u7b87\u6240\u3067\u3082\u5230\u9054\u53ef\u80fd\u3060\u3068\u8cc7\u683c\u3092\u55aa\u5931**\u3059\u308b\u305f\u3081\u3001\u5217\u6319\u30ea\u30b9\u30c8\u30ac\u30fc\u30c9\u3067\u306a\u304f **\u69cb\u9020\u7684\u62d2\u5426\uff08fail-closed\uff09** \u3067\u5012\u3059\u3002\\n\\n## \u68da\u5378\u3057\uff08native \u5230\u9054\u9762\uff09\\n| \u5230\u9054\u9762 | \u5bfe\u5fdc |\\n|---|---|\\n| `UpgradePrompt`\uff08createCheckoutSession\u3001App/Header/StatsChart/SettingsPanel \u306e4\u30de\u30a6\u30f3\u30c8\uff09 | self-guard \u3067 native \u306f `return null` |\\n| `Header` \u300c\u652f\u6255\u3044\u65b9\u6cd5\u3092\u7ba1\u7406\u300d\uff08createPortalSession = Stripe \u30dd\u30fc\u30bf\u30eb\uff1d\u652f\u6255\u3044/\u30a2\u30c3\u30d7\u30b0\u30ec\u30fc\u30c9\u306b\u5230\u9054\uff09 | `PAYMENTS_UI_ENABLED` \u30ac\u30fc\u30c9\u3067 native \u975e\u63cf\u753b |\\n| `CancelSubscriptionModal`\uff08cancelSubscription\uff09 | \u81ea\u793e Worker \u76f4 API\u30fbStripe Portal \u4e0d\u5230\u9054\u3002native \u3067\u306f Standard \u30d6\u30ed\u30c3\u30af\u5185\u3067\u975e\u63cf\u753b\uff08A-silent\u3001\u89e3\u7d04\u306f Web \u3067\u7ba1\u7406\uff09 |\\n\\n## \u5b9f\u88c5\uff082\u5c64 + \u5358\u4e00\u30bd\u30fc\u30b9\uff09\\n- **features.ts**: `PAYMENTS_UI_ENABLED = !isNative()` \u3092 `ADS_ENABLED` \u3068\u5bfe\u79f0\u306b\u65b0\u8a2d\uff08web=true / native=false\uff09\\n- **UI \u5358\u4e00\u30c1\u30e7\u30fc\u30af\u30dd\u30a4\u30f3\u30c8**: `UpgradePrompt` \u5192\u982d\u3067 \"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-c88d0c73e1489d98\",\n    \"filename\": \"src/components/layout/Header.tsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 3,\n    \"changes\": 6,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/986b55bb2d430539525cf91a0c861d60cec4119e/src%2Fcomponents%2Flayout%2FHeader.tsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-cb9de852e5c8e1a9\",\n    \"filename\": \"src/components/shared/UpgradePrompt.tsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 13,\n    \"deletions\": 6,\n    \"changes\": 19,\n    \"blob_url\": \"https://github.com/ura\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "comment-chain-pattern-assumption_checks-8922b37b06c5b822", "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": "urakutours/pomocare", "source_dataset": "comment_chain_patterns/assumption_checks", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_assumption_check", "level": "warning", "message": {"text": "Foundry mined assumption checks: urakutours/pomocare"}, "properties": {"repobilityId": 383500, "scanner": "foundry_dataset", "fingerprint": "066858ff3f1b16d480fca6638ecfc2d897d341aaa8213b20d6fc98eb67b263d3", "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": "urakutours/pomocare#10", "human_labels": ["api_or_backend", "docs_or_claims", "schema_or_data", "security_auth_secret", "source_or_other"], "issue_number": "10", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "urakutours/pomocare", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-41df9d3beef4be08", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 4, "routes_api": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 4, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"api_or_backend": 1, "docs_or_claims": 1, "schema_or_data": 1, "source_or_other": 1}, "linked_commit_count": 4, "helicopter_view_count": 2, "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": 1, "verification_artifact_count": 1, "design_schema_api_artifact_count": 3}, "text": "Comment chain pattern product: assumption_checks\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#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, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: urakutours/pomocare#10\nRepo: urakutours/pomocare\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 4\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\nChanged file count: 4\nLabels: {'security_auth_secret': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'docs_or_claims': 1, 'source_or_other': 1, 'schema_or_data': 1, 'api_or_backend': 1}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-a36fd2f3dc6dd578\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"security_auth_secret\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/urakutours/pomocare/pull/10\",\n    \"text\": \"GitHub feedback: security_auth_secret\\nPolarity: bad\\nKind: pull_request_body\\nRepo: urakutours/pomocare\\nAuthor: urakutours (User)\\nURL: https://github.com/urakutours/pomocare/pull/10\\nTitle: fix(security): Play \u672c\u756a\u516c\u958b\u524d\u306e Critical \u4fee\u6b63 (assetlinks \u5931\u52b9\u9375\u524a\u9664 / \u8cc7\u683c\u60c5\u5831\u9664\u53bb / delete-account \u5b9f\u30c6\u30fc\u30d6\u30eb\u5316)\\nBody:\\n## \u80cc\u666f\\nPlay \u672c\u756a\uff08\u88fd\u54c1\u7248\uff09\u516c\u958b\u6e96\u5099\u306e security-reviewer \u76e3\u67fb\uff08grand plan Task 3d\uff09\u3067 Critical 2 \u4ef6 + Warning 1 \u4ef6\u3092\u691c\u51fa\u3002\u3044\u305a\u308c\u3082 PR #7/#8/#9 \u7531\u6765\u3067\u306f\u306a\u3044\u65e2\u5b58\u6761\u4ef6\uff08public \u30ea\u30dd\u524d\u63d0\uff09\u3002\\n\\n## \u4fee\u6b63\u5185\u5bb9\\n| # | \u6307\u6458 | \u4fee\u6b63 |\\n|---|---|---|\\n| C-1 \ud83d\udd34 | \u516c\u958b git \u5c65\u6b74 (`2e5de9be`) \u306b\u65e7 TWA \u7f72\u540d keystore + \u5e73\u6587\u30d1\u30b9\u30ef\u30fc\u30c9\u304c\u6b8b\u5b58\u3057\u3001\u305d\u306e\u8a3c\u660e\u66f8 fingerprint \u304c assetlinks.json \u3067\u73fe\u5f79\u4fe1\u983c\uff08\u60aa\u6027 APK \u304c App Links \u691c\u8a3c\u3092\u901a\u904e \u2192 password-reset \u30c7\u30a3\u30fc\u30d7\u30ea\u30f3\u30af\u6a2a\u53d6\u308a\u7d4c\u8def\uff09 | `public/.well-known/assetlinks.json` \u304b\u3089\u6f0f\u6d29 fingerprint (`2C:2C:FD:...`) \u3092\u524a\u9664\u3002`docs/external-config.md` \u306e\u30ed\u30fc\u30c6\u624b\u9806\u4f8b\u793a\u3082\u73fe\u884c 2 \u30a8\u30f3\u30c8\u30ea\u5316 + \u518d\u8ffd\u52a0\u7981\u6b62\u6ce8\u8a18 |\\n| C-2 \ud83d\udd34 | `scripts/migrate-supabase-to-neon.mjs:44` \u306b\u5b9f\u30a2\u30ab\u30a6\u30f3\u30c8\u306e email + \u5e73\u6587\u30d1\u30b9\u30ef\u30fc\u30c9\u304c\u30cf\u30fc\u30c9\u30b3\u30fc\u30c9 | \u30b9\u30af\u30ea\u30d7\u30c8\u3092\u30d5\u30a1\u30a4\u30eb\u3054\u3068\u524a\u9664\uff08\u79fb\u884c\u5b8c\u4e86\u6e08\u307f\u30fb\u5b9f\u884c\u53c2\u7167\u306a\u3057\uff09 |\\n| W-3 \ud83d\udfe1 | delete-account worker \u304c\u65e7\u30b9\u30ad\u30fc\u30de\u306e\u30c6\u30fc\u30d6\u30eb\u540d\u3092\u53c2\u7167\u3057\u3001`user_sessions_v2` \u306e PII\uff08label/note\uff09\u304c\u524a\u9664\u3055\u308c\u306a\u3044\u307e\u307e success \u3092\u8fd4\u5374\uff08Play \u30c7\u30fc\u30bf\u30bb\u30fc\u30d5\u30c6\u30a3\u300c\u524a\u9664\u53ef\u300d\u7533\u544a\u3068\u77db\u76fe\uff09 | \u524a\u9664\u5bfe\u8c61\u3092\u5b9f\u5728 3 \u30c6\u30fc\u30d6\u30eb\u306b\u4fee\u6b63\u3002DB \u524a\u9664\u5931\u6557\u6642\u306f 500 \u3092\u8fd4\u3059\uff08Stripe \u90e8\u5206\u5931\u6557\u306f\u5f93\u6765\u3069\u304a\u308a\u7d99\u7d9a\u3001\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u5185\u90e8\u8a73\u7d30\u306a\u3057\uff09 |\\n\\n## \u691c\u8a3c\\n- tsc\uff08root / workers\uff09clean\u3001lint \u65b0\u898f error 0\uff08\u65e2\u77e5 3 errors = legacy\uff09\u3001build PASS\\n- security-reviewer \u518d\u5224\u5b9a: **C-1/C-\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-80ced1fb396d61d7\",\n    \"filename\": \"docs/external-config.md\",\n    \"label\": \"docs_or_claims\",\n    \"status\": \"modified\",\n    \"additions\": 3,\n    \"deletions\": 1,\n    \"changes\": 4,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/781fc2f83f077cd2da442babdbd2c17f462184db/docs%2Fexternal-config.md\"\n  },\n  {\n    \"id\": \"github-pr-file-file-2ad3b3721f464352\",\n    \"filename\": \"public/.well-known/assetlinks.json\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 0,\n    \"deletions\": 1,\n    \"changes\": 1,\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "comment-chain-pattern-assumption_checks-fee2f6b9f7d90c7e", "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": "urakutours/pomocare", "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: urakutours/pomocare"}, "properties": {"repobilityId": 420576, "scanner": "foundry_dataset", "fingerprint": "67dd92698e4f869e545b309364d64f4c3e464810b7210f9e0c6e9ed90807625b", "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": {"source_or_other": 2, "security_or_secrets": 1, "generated_provenance": 1, "security_auth_secret": 1, "ci_pending_or_incomplete": 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": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 20, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "comment_chain_has_ci": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 2, "thread_has_comment_chain": 1, "comment_chain_links_commit": 2, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 1, "pr_file": 2, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#12", "issue_number": "12", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-2e7d0e184aa86849", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"source_or_other": 8}}, "text": "Graph query export: Feedback exposes missing tests or CI\nQuery id: test_ci_gap_after_feedback\nQuery type: motif_query\nIntent: Hard negatives for feedback/fix chains without adequate guardrails.\nMotif: test_ci_gap_after_feedback\nTraining usage: hard_negative\nGraph gold label: supported_by_high_confidence_link\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#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: urakutours/pomocare\nThread: urakutours/pomocare#12\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#12\nRepo: urakutours/pomocare\nIssue/PR number: 12\nGraph consistency label: supported_by_high_confidence_link\nNodes: 14\nEdges: 20\nNode types: {'link_quality': 3, 'pr_file': 2, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 3, '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, '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: {'claimed_resolved_unverified': 3, 'source_or_other': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'human_reported_issue_then_fix_attempt': 1, 'security_or_secrets': 1, 'generated_provenance': 1, 'ci_pending_or_incomplete': 1}\nOutcomes: {'claimed_resolved_unverified': 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/urakutours/pomocare", "source_id": "graph-query-motif_query-316105d7ecf13baa", "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": "urakutours/pomocare", "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: urakutours/pomocare"}, "properties": {"repobilityId": 420575, "scanner": "foundry_dataset", "fingerprint": "e9ae614b9943baf4052c34ecaf6de043c54458a66d8a0ee3182ecc7d7a22f8db", "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, "ui_or_frontend": 4, "api_integration_gap": 1, "generated_provenance": 1, "partial blueprint fit": 2, "ci_pending_or_incomplete": 1, "mostly follows blueprint": 1, "claimed_resolved_unverified": 3, "issue_or_pull_request_thread": 1, "blueprint_human_gap_alignment": 2, "blueprint_human_gap_disagreement": 1, "human_reported_issue_then_fix_attempt": 1, "thread_has_human_issue_and_fix_context": 2}, "source": "graph_query_export", "motif_id": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 39, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 4, "comment_chain_has_ci": 1, "alignment_uses_comment": 3, "alignment_uses_finding": 3, "chain_has_link_quality": 6, "comment_aligns_finding": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 4, "thread_has_comment_chain": 1, "comment_chain_links_commit": 3, "comment_chain_touches_file": 4, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 26, "node_types": {"repo": 1, "commit": 3, "thread": 1, "comment": 1, "pr_file": 4, "alignment": 3, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 6, "comment_chain": 1, "blueprint_finding": 3}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#11", "issue_number": "11", "quality_tiers": {"high_confidence": 3, "assumption_check": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-fba278e923fd2fef", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"ui_or_frontend": 16}}, "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: urakutours/pomocare\nThread: urakutours/pomocare#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: urakutours/pomocare\nThread: urakutours/pomocare#11\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#11\nRepo: urakutours/pomocare\nIssue/PR number: 11\nGraph consistency label: supported_by_high_confidence_link\nNodes: 26\nEdges: 39\nNode types: {'link_quality': 6, 'pr_file': 4, 'commit': 3, 'alignment': 3, 'blueprint_finding': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 6, 'thread_touches_file': 4, 'comment_chain_touches_file': 4, 'issue_chain_touches_file': 4, 'comment_chain_links_commit': 3, 'alignment_uses_comment': 3, 'alignment_uses_finding': 3, 'comment_aligns_finding': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_has_ci': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1}\nLabels: {'ui_or_frontend': 4, 'claimed_resolved_unverified': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'blueprint_human_gap_alignment': 2, 'partial blueprint fit': 2, 'issue_or_pull_request_thread': 1, 'api_integration_gap': 1, 'human_reported_issue_then_fix_attempt': 1, 'generated_provenance': 1, 'ci_pending_or_incomplete': 1, 'blueprint_human_gap_disagreement': 1, 'mostly follows blueprint': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3, 'assumption_check': 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/urakutours/pomocare", "source_id": "graph-query-motif_query-f72edc9c98cd29dc", "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": "urakutours/pomocare", "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: urakutours/pomocare"}, "properties": {"repobilityId": 420574, "scanner": "foundry_dataset", "fingerprint": "cc1e19a38ea18015f353a80f919bfb62530f69508c5bd415a18797df3ffd7e90", "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, "api_or_backend": 1, "docs_or_claims": 1, "schema_or_data": 1, "source_or_other": 1, "security_or_secrets": 1, "generated_provenance": 1, "security_auth_secret": 1, "ci_pending_or_incomplete": 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": "test_ci_gap_after_feedback", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "test_ci_gap_after_feedback", "severity": "high", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 28, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 4, "comment_chain_has_ci": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 4, "thread_has_comment_chain": 1, "comment_chain_links_commit": 4, "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": 4, "thread": 1, "comment": 1, "pr_file": 4, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#10", "issue_number": "10", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-2cfaf44acd47daa5", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"api_or_backend": 4, "docs_or_claims": 4, "schema_or_data": 4, "source_or_other": 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: urakutours/pomocare\nThread: urakutours/pomocare#10\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: urakutours/pomocare\nThread: urakutours/pomocare#10\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#10\nRepo: urakutours/pomocare\nIssue/PR number: 10\nGraph consistency label: supported_by_high_confidence_link\nNodes: 18\nEdges: 28\nNode types: {'pr_file': 4, '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': 4, 'comment_chain_links_commit': 4, 'comment_chain_touches_file': 4, 'issue_chain_touches_file': 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: {'claimed_resolved_unverified': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'docs_or_claims': 1, 'source_or_other': 1, 'schema_or_data': 1, 'api_or_backend': 1, 'human_reported_issue_then_fix_attempt': 1, 'generated_provenance': 1, 'ci_pending_or_incomplete': 1, 'security_or_secrets': 1}\nOutcomes: {'claimed_resolved_unverified': 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/urakutours/pomocare", "source_id": "graph-query-motif_query-ef92cbb872c97099", "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": "urakutours/pomocare", "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: urakutours/pomocare"}, "properties": {"repobilityId": 411382, "scanner": "foundry_dataset", "fingerprint": "9a34e727c65f254c262f36862796049b934fed5ed145cb11c4e5568b456f4631", "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, "api_or_backend": 2, "docs_or_claims": 1, "schema_or_data": 1, "ui_or_frontend": 3, "source_or_other": 1, "dependency_or_build": 1, "security_or_secrets": 3, "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": "schema_ui_api_mismatch", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {}, "synthetic": false, "edge_count": 40, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 8, "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": 5, "comment_chain_touches_file": 8, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 22, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 8, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#4", "issue_number": "4", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-943199b3e1d08fd4", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"api_or_backend": 8, "docs_or_claims": 4, "schema_or_data": 4, "ui_or_frontend": 12, "source_or_other": 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_high_confidence_link\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#4\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: urakutours/pomocare\nThread: urakutours/pomocare#4\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#4\nRepo: urakutours/pomocare\nIssue/PR number: 4\nGraph consistency label: supported_by_high_confidence_link\nNodes: 22\nEdges: 40\nNode types: {'pr_file': 8, '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': 8, 'comment_chain_touches_file': 8, 'issue_chain_touches_file': 8, '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: {'ui_or_frontend': 3, 'security_or_secrets': 3, 'claimed_resolved_unverified': 3, 'api_or_backend': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'docs_or_claims': 1, 'schema_or_data': 1, 'source_or_other': 1, 'human_reported_issue_then_fix_attempt': 1, 'bug_fix': 1, 'dependency_or_build': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {}\nCurriculum targets:\n- Create schema-to-API-to-UI consistency tasks with migrations and tests.\n- Teach models to verify persistence, route contracts, and UI state together.\nAssumption checks:\n- Do schema changes have matching API and UI handling?\n- Are migrations and tests present for the data path?", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "graph-query-motif_query-afda13af6928fc9d", "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": "urakutours/pomocare", "source_dataset": "graph_queries/schema_ui_api_mismatch", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_schema_ui_api_gap", "level": "error", "message": {"text": "Foundry mined schema ui api mismatch: urakutours/pomocare"}, "properties": {"repobilityId": 411381, "scanner": "foundry_dataset", "fingerprint": "9b1fac69abda89537715ea0d9ca2439dc7ef82a21a813eae941d8b5cee886345", "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": 2, "api_or_backend": 1, "docs_or_claims": 1, "schema_or_data": 1, "source_or_other": 1, "security_or_secrets": 1, "generated_provenance": 1, "security_auth_secret": 1, "ci_pending_or_incomplete": 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": "schema_ui_api_mismatch", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "schema_ui_api_mismatch", "severity": "high", "ci_labels": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 28, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 4, "comment_chain_has_ci": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 4, "thread_has_comment_chain": 1, "comment_chain_links_commit": 4, "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": 4, "thread": 1, "comment": 1, "pr_file": 4, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#10", "issue_number": "10", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-765b9c2c1f0d2876", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"api_or_backend": 4, "docs_or_claims": 4, "schema_or_data": 4, "source_or_other": 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_high_confidence_link\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#10\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: urakutours/pomocare\nThread: urakutours/pomocare#10\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#10\nRepo: urakutours/pomocare\nIssue/PR number: 10\nGraph consistency label: supported_by_high_confidence_link\nNodes: 18\nEdges: 28\nNode types: {'pr_file': 4, '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': 4, 'comment_chain_links_commit': 4, 'comment_chain_touches_file': 4, 'issue_chain_touches_file': 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: {'claimed_resolved_unverified': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'docs_or_claims': 1, 'source_or_other': 1, 'schema_or_data': 1, 'api_or_backend': 1, 'human_reported_issue_then_fix_attempt': 1, 'generated_provenance': 1, 'ci_pending_or_incomplete': 1, 'security_or_secrets': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {'ci_pending_or_incomplete': 2}\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/urakutours/pomocare", "source_id": "graph-query-motif_query-5f302e9ce08b011e", "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": "urakutours/pomocare", "source_dataset": "graph_queries/schema_ui_api_mismatch", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: urakutours/pomocare"}, "properties": {"repobilityId": 391882, "scanner": "foundry_dataset", "fingerprint": "86e3b07ee7956791309f7aea56f236c5cb58095a22996427b3712ee571f4bd1a", "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": "urakutours/pomocare#6", "human_labels": ["dependency_or_build", "docs_or_claims", "mock_placeholder", "security_or_auth", "source_or_other"], "issue_number": "6", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "claimed_resolved_unverified", "source_backed": true, "max_confidence": 0.82, "repo_full_name": "urakutours/pomocare", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-bcac36445a27b15c", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 4, "routes_api": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 8, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"docs_or_claims": 2, "source_or_other": 3, "security_or_auth": 1, "dependency_or_build": 2}, "linked_commit_count": 3, "helicopter_view_count": 2, "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": 1, "design_schema_api_artifact_count": 3}, "text": "Comment chain pattern product: bad_chains\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#6\nOutcome: claimed_resolved_unverified\nThread label: thread_has_human_issue_and_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_high_confidence, high_risk_human_feedback_label\nChain evidence:\nIssue/PR evidence chain: urakutours/pomocare#6\nRepo: urakutours/pomocare\nThread label: thread_has_human_issue_and_fix_context\nOutcome: claimed_resolved_unverified\nComment count: 1\nLinked commit count: 3\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 8\nLabels: {'mock_placeholder': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 3, 'docs_or_claims': 2, 'security_or_auth': 1, 'dependency_or_build': 2}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-4d00249cde9a1e87\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"mock_placeholder\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/urakutours/pomocare/pull/6\",\n    \"text\": \"GitHub feedback: mock_placeholder\\nPolarity: bad\\nKind: pull_request_body\\nRepo: urakutours/pomocare\\nAuthor: urakutours (User)\\nURL: https://github.com/urakutours/pomocare/pull/6\\nTitle: feat(secrets): dotenvx Phase 2b \u2014 .env selective encrypt (B-1 \u6d3e\u751f\u5f62\u30fb\u6848 3)\\nBody:\\n## Summary\\n\\n- DEPLOY_* (5 keys) \u3092 dotenvx \u3067\u6697\u53f7\u5316\u3001VITE_* (3 keys) \u306f\u5e73\u6587\u6b8b\u7559\u3067 1 file \u96c6\u7d04 (`.env` \u3092 commit \u5bfe\u8c61\u306b)\\n- Cloudflare Worker secret \u3092 `workers/.env.example` + `workers/README.md` SOP \u3067 wrangler \u4e00\u672c\u7ba1\u7406\u306b\u6574\u7406 (`.env.local` \u65e7 9 keys \u5217\u6319\u3092\u5ec3\u6b62)\\n- \u5224\u5b9a\u7d4c\u7def: web \u7248 \u2460 \u3067 B-1 \u78ba\u5b9a \u2192 \u2461 \u3067 `.env.public` Vite \u81ea\u52d5 load \u554f\u984c\u767a\u898b \u2192 Daisuke \u6848 3 \u63a1\u7528 (1 file selective encrypt)\\n\\n## \u4e3b\u8981\u5909\u66f4\\n\\n| File | \u5185\u5bb9 |\\n|---|---|\\n| `.env` (commit \u5bfe\u8c61) | DEPLOY_* 5 keys dotenvx \u6697\u53f7\u5316 + VITE_* 3 keys \u5e73\u6587 |\\n| `.env.local` (gitignored) | \u7a7a\u5316 (\u30ed\u30fc\u30ab\u30eb override \u7528\u306b\u6b8b\u7f6e) |\\n| `.env.keys` (gitignored) | dotenvx \u5fa9\u53f7\u9375 (Drive backup \u7d4c\u7531\u914d\u5e03) |\\n| `.gitignore` | `.env` \u3092 commit \u5bfe\u8c61\u306b\u89e3\u653e\u3001`.env.keys` \u3092 ignore \u306b\u8ffd\u52a0 |\\n| `package.json` | `lp:deploy` \u3092 `dotenvx run -f .env --` \u7d4c\u7531\u306b\u7f6e\u63db\u3001`@dotenvx/dotenvx ^1.67.0` devDep \u8ffd\u52a0 |\\n| `workers/.env.example` (\u65b0\u898f) | Cloudflare Worker secret \u6b63\u672c placeholder (11 keys\u3001\u6a5f\u5bc6\u5ea6\u5225\u30a2\u30a4\u30b3\u30f3) |\\n| `workers/README.md` (\u65b0\u898f) | \u65b0 secret \u8ffd\u52a0 SOP (3 \u30b9\u30c6\u30c3\u30d7) + \u6708\u6b21\u7167\u5408 SOP + \u95a2\u9023\u30d5\u30a1\u30a4\u30eb\u4e00\u89a7 |\\n| `docs/env-setup.md` (\u65b0\u898f) | 4 \u30d5\u30a1\u30a4\u30eb\u904b\u7528\u5168\u4f53 \"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-675a61014b44a65e\",\n    \"filename\": \".env\",\n    \"label\": \"source_or_other\",\n    \"status\": \"added\",\n    \"additions\": 26,\n    \"deletions\": 0,\n    \"changes\": 26,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/b2e0daff622f932a9718a99bbacd85c7bafaffbb/.env\"\n  },\n  {\n    \"id\": \"github-pr-file-file-22aa6a08b0367620\",\n    \"filename\": \".gitignore\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 5,\n    \"deletions\": 2,\n    \"changes\": 7,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/b2e0daff622f932a9718a99bbacd85c7bafaffbb/\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "comment-chain-pattern-bad_chains-4fa744c11d51cd47", "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": "urakutours/pomocare", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: urakutours/pomocare"}, "properties": {"repobilityId": 391881, "scanner": "foundry_dataset", "fingerprint": "7464a5ef485b949f13e5a83a9ee60a1027b46380277c0b020328313f3880f856", "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": "urakutours/pomocare#13", "human_labels": ["agent_instruction_gap", "ui_or_frontend"], "issue_number": "13", "thread_label": "thread_has_human_issue_and_fix_context", "outcome_label": "self_attested_unverified", "source_backed": true, "max_confidence": 0.92, "repo_full_name": "urakutours/pomocare", "training_usage": "gold_candidate", "confidence_tier": "high_confidence", "source_chain_id": "evidence-chain-issue_chain-10ca59c12050ba7f", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 4, "routes_api": 3}, "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": 1, "helicopter_view_count": 2, "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": 1, "verification_artifact_count": 1, "design_schema_api_artifact_count": 3}, "text": "Comment chain pattern product: bad_chains\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#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: urakutours/pomocare#13\nRepo: urakutours/pomocare\nThread label: thread_has_human_issue_and_fix_context\nOutcome: self_attested_unverified\nComment count: 1\nLinked commit count: 1\nLinked CI commit count: 1\nLinked CI labels: {'ci_pending_or_incomplete': 1}\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-f049a34d0740153f\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"agent_instruction_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/urakutours/pomocare/pull/13\",\n    \"text\": \"GitHub feedback: agent_instruction_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: urakutours/pomocare\\nAuthor: urakutours (User)\\nURL: https://github.com/urakutours/pomocare/pull/13\\nTitle: chore(release): versionCode 5 (1.0.4) \u2014 \u5185\u90e8\u30c6\u30b9\u30c8\u5411\u3051\u30ea\u30ea\u30fc\u30b9 prep\\nBody:\\n## \u5185\u5bb9\\nvc4(1.0.3) \u4ee5\u964d\u306e main \u5909\u66f4\u3092 Play \u914d\u4fe1\u7248\uff08\u5185\u90e8\u30c6\u30b9\u30c8\u2192\u672c\u756a\uff09\u306b\u4e57\u305b\u308b\u305f\u3081 versionCode \u3092 5 / versionName \u3092 1.0.4 \u306b bump\u3002\\n\\n\u542b\u307e\u308c\u308b\u5909\u66f4\uff08vc4 \u4ee5\u964d\u306e main\uff09:\\n- **#11** native Stripe \u6c7a\u6e08\u5c0e\u7dda\u306e\u69cb\u9020\u7684\u5168\u6d88\u3057\uff08\u6d88\u8cbb\u5c02\u7528\u30a2\u30d7\u30ea\u5316\u3001Play \u6d88\u8cbb\u5c02\u7528\u8981\u4ef6\uff09\\n- **#10** \u6f0f\u6d29\u7f72\u540d\u9375\u306e assetlinks \u5931\u52b9 / delete-account \u5b9f\u30c6\u30fc\u30d6\u30eb\u5316\uff08W-3\uff09\\n- **#12** CF account_id \u30d4\u30f3\u7559\u3081\\n\\n## \u3053\u306ePR\u5f8c\u306e\u624b\u9806\\n1. merge\uff08Daisuke\uff09\\n2. \u7f72\u540d AAB\uff08vc5\uff09\u30d3\u30eb\u30c9\uff08Claude \u99c6\u52d5\uff09\\n3. Play Console \u5185\u90e8\u30c6\u30b9\u30c8\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\uff08Daisuke\uff09\\n4. \u5b9f\u6a5f\u691c\u8a3c: native \u306b\u6c7a\u6e08 UI \u30bc\u30ed + exact-alarm \u753b\u9762\u30aa\u30d5\u767a\u706b + \u65b0\u97f3\uff08\u56de\u5e30\uff09\\n5. PASS \u2192 \u672c\u756a prep\uff08\u30c7\u30fc\u30bf\u30bb\u30fc\u30d5\u30c6\u30a3/\u30b9\u30c8\u30a2\u63b2\u8f09/\u30ec\u30fc\u30c6\u30a3\u30f3\u30b0/\u5bfe\u8c61\u5c64/USE_EXACT_ALARM \u7533\u544a\uff09\\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-5fd7ae5fb080af6a\",\n    \"filename\": \"android/app/build.gradle\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 2,\n    \"deletions\": 2,\n    \"changes\": 4,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/7d27d455bd1afcbb7967e3b5c4d07dd58d734487/android%2Fapp%2Fbuild.gradle\"\n  }\n]\nLinked chain ids:\n[\"evidence-chain-comment_to_commit-e6a126913fd47dc8\"]\nSource graph evidence:\nSource evidence repo graph summary\nRepo: urakutours/pomocare\nGraph label: source_backed_multi_signal_graph\nNodes: 14\nEdges: 22\nNode types: {\"cooccurrence_profile\": 1, \"github_repo_summary\": 1, \"helicopter_repo_view\": 2, \"repo\": 1, \"source_artifact\": 8, \"source_bundle\": 1}\nEdge types: {\"artifact_needs_claim_verification\": 4, \"artifact_supports_design_schema_api\": 3, \"artifact_supports_verification\": 1, \"repo_has_cooccurrence_profile\": 1, \"repo_has_github_evidence_summary\": 1, \"repo_has_schemas_helicopter_view\": 2, \"repo_has_source_artifact\": 8, \"repo_has_source_bundle\": 1, \"source_bundle_uses_cooccurrence_profile\": 1}\nArt\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "comment-chain-pattern-bad_chains-5076edd959cc7cbc", "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": "urakutours/pomocare", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "gold_candidate"}}}, {"ruleId": "foundry_bad_chain", "level": "error", "message": {"text": "Foundry mined bad chains: urakutours/pomocare"}, "properties": {"repobilityId": 391880, "scanner": "foundry_dataset", "fingerprint": "5ff14fade1f5f0d5ff8611c81265e0f780a2c20fe96d858e96bd0adcc95bf29b", "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": "urakutours/pomocare#1", "human_labels": ["source_or_other", "ui_or_frontend", "ui_workflow_gap"], "issue_number": "1", "thread_label": "thread_has_human_issue_without_fix_context", "outcome_label": "not_resolved_or_not_observed", "source_backed": true, "max_confidence": 0.0, "repo_full_name": "urakutours/pomocare", "training_usage": "negative_or_unresolved", "confidence_tier": "unresolved", "source_chain_id": "evidence-chain-issue_chain-c6699534f29d4ae4", "helicopter_views": {"schemas": 2}, "artifact_families": {"ci": 1, "docs": 4, "routes_api": 3}, "source_chain_kind": "issue_chain", "changed_file_count": 14, "source_graph_label": "source_backed_multi_signal_graph", "changed_file_labels": {"ui_or_frontend": 13, "source_or_other": 1}, "linked_commit_count": 0, "helicopter_view_count": 2, "source_artifact_count": 8, "classification_reasons": ["source_graph_has_real_artifacts", "source_graph_has_verification_artifacts", "repo_has_isolated_helicopter_views", "link_quality_unresolved"], "linked_ci_commit_count": 0, "verification_artifact_count": 1, "design_schema_api_artifact_count": 3}, "text": "Comment chain pattern product: bad_chains\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#1\nOutcome: not_resolved_or_not_observed\nThread label: thread_has_human_issue_without_fix_context\nSource graph label: source_backed_multi_signal_graph\nReasons: source_graph_has_real_artifacts, source_graph_has_verification_artifacts, repo_has_isolated_helicopter_views, link_quality_unresolved\nChain evidence:\nIssue/PR evidence chain: urakutours/pomocare#1\nRepo: urakutours/pomocare\nThread label: thread_has_human_issue_without_fix_context\nOutcome: not_resolved_or_not_observed\nComment count: 1\nLinked commit count: 0\nLinked CI commit count: 0\nLinked CI labels: {}\nChanged file count: 14\nLabels: {'ui_workflow_gap': 1}\nPolarities: {'bad': 1}\nChanged file labels: {'source_or_other': 1, 'ui_or_frontend': 13}\nExamples:\n[\n  {\n    \"id\": \"github-feedback-comment-70676932b5699119\",\n    \"kind\": \"pull_request_body\",\n    \"label\": \"ui_workflow_gap\",\n    \"polarity\": \"bad\",\n    \"url\": \"https://github.com/urakutours/pomocare/pull/1\",\n    \"text\": \"GitHub feedback: ui_workflow_gap\\nPolarity: bad\\nKind: pull_request_body\\nRepo: urakutours/pomocare\\nAuthor: urakutours (User)\\nURL: https://github.com/urakutours/pomocare/pull/1\\nTitle: Fix UI issues: today/week alignment, modal editing, label alignment, \u2026\\nBody:\\n\u2026CSV import, graph bar modal\\r\\n\\r\\n- \u30e1\u30a4\u30f3\u753b\u9762\uff1a\u4eca\u65e5\u30fb\u4eca\u9031\u30ab\u30fc\u30c9\u306e\u4e0b\u6bb5\u3092\u5e38\u306b\u540c\u3058\u9ad8\u3055\u3067\u63c3\u3048\u308b\uff08min-h\u4f7f\u7528\uff09\\r\\n- \u8a73\u7d30\u30e2\u30fc\u30c0\u30eb\uff1a\u30e9\u30d9\u30eb\u5909\u66f4\u30fb\u30e1\u30e2\u7de8\u96c6\u3092\u30e2\u30fc\u30c0\u30eb\u30d5\u30c3\u30bf\u30fc\u306b\u79fb\u52d5\u3057\u3066overflow clipping\u3092\u89e3\u6d88\\r\\n- \u30e1\u30a4\u30f3\u753b\u9762\uff1a\u30e9\u30d9\u30eb\u9078\u629e\u30d7\u30eb\u30c0\u30a6\u30f3\u3092\u5de6\u63c3\u3048\u306b\u5909\u66f4\\r\\n- \u8a2d\u5b9a\u753b\u9762\uff1a\u30c7\u30fc\u30bf\u521d\u671f\u5316\u306e\u524d\u306bCSV\u30a4\u30f3\u30dd\u30fc\u30c8\u6a5f\u80fd\u3092\u8ffd\u52a0\uff08\u91cd\u8907\u30b9\u30ad\u30c3\u30d7\u3001\u30e9\u30d9\u30eb\u540d\u30de\u30c3\u30c1\u30f3\u30b0\uff09\\r\\n- \u30b0\u30e9\u30d5\u753b\u9762\uff1a\u68d2\u30b0\u30e9\u30d5\u30af\u30ea\u30c3\u30af\u3067\u5bfe\u8c61\u671f\u9593\u306e\u30bb\u30c3\u30b7\u30e7\u30f3\u8a73\u7d30\u30e2\u30fc\u30c0\u30eb\u3092\u8868\u793a\\r\\n- \u5168\u8a00\u8a9e\u30d5\u30a1\u30a4\u30eb\u306bcsvImport\u7ffb\u8a33\u30ad\u30fc\u3092\u8ffd\u52a0\"\n  }\n]\nChanged files:\n[\n  {\n    \"id\": \"github-pr-file-file-88567de75797ab2b\",\n    \"filename\": \".claude/settings.local.json\",\n    \"label\": \"source_or_other\",\n    \"status\": \"modified\",\n    \"additions\": 2,\n    \"deletions\": 1,\n    \"changes\": 3,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/356e854998013285a3b869ba85168a833559c7bb/.claude%2Fsettings.local.json\"\n  },\n  {\n    \"id\": \"github-pr-file-file-26eb0725f930a9c0\",\n    \"filename\": \"src/App.tsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 10,\n    \"deletions\": 1,\n    \"changes\": 11,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/356e854998013285a3b869ba85168a833559c7bb/src%2FApp.tsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-e8cfb2eb565c5a97\",\n    \"filename\": \"src/components/settings/SettingsPanel.tsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 82,\n    \"deletions\": 3,\n    \"changes\": 85,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/356e854998013285a3b869ba85168a833559c7bb/src%2Fcomponents%2Fsettings%2FSettingsPanel.tsx\"\n  },\n  {\n    \"id\": \"github-pr-file-file-f34660e238e91506\",\n    \"filename\": \"src/components/stats/SessionSummary.tsx\",\n    \"label\": \"ui_or_frontend\",\n    \"status\": \"modified\",\n    \"additions\": 103,\n    \"deletions\": 94,\n    \"changes\": 197,\n    \"blob_url\": \"https://github.com/urakutours/pomocare/blob/\n[truncated by importer]", "source": "foundry_mined_dataset", "repo_url": "https://github.com/urakutours/pomocare", "source_id": "comment-chain-pattern-bad_chains-653ba9ed011597c7", "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": "urakutours/pomocare", "source_dataset": "comment_chain_patterns/bad_chains", "training_usage": "negative_or_unresolved"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: urakutours/pomocare"}, "properties": {"repobilityId": 414990, "scanner": "foundry_dataset", "fingerprint": "6073be75a3ba3a4f35d77eb15c1269e4f4b33f34f10f0cb8a82bd131af7e9ec8", "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": {"bug_fix": 2, "docs_or_claims": 2, "source_or_other": 3, "mock_placeholder": 1, "security_or_auth": 1, "dependency_or_build": 2, "security_or_secrets": 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": 38, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 8, "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": 3, "comment_chain_touches_file": 8, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 20, "node_types": {"repo": 1, "commit": 3, "thread": 1, "comment": 1, "pr_file": 8, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#6", "issue_number": "6", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-afc62c489c2b911e", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"docs_or_claims": 8, "source_or_other": 12, "security_or_auth": 4, "dependency_or_build": 8}}, "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: supported_by_high_confidence_link\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#6\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#6\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#6\nRepo: urakutours/pomocare\nIssue/PR number: 6\nGraph consistency label: supported_by_high_confidence_link\nNodes: 20\nEdges: 38\nNode types: {'pr_file': 8, 'commit': 3, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 8, 'comment_chain_touches_file': 8, 'issue_chain_touches_file': 8, 'comment_chain_links_commit': 3, 'chain_has_link_quality': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'source_or_other': 3, 'claimed_resolved_unverified': 3, 'docs_or_claims': 2, 'dependency_or_build': 2, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'security_or_auth': 1, 'human_reported_issue_then_fix_attempt': 1, 'security_or_secrets': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 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/urakutours/pomocare", "source_id": "graph-query-motif_query-11fd2330d5a10bdd", "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": "urakutours/pomocare", "source_dataset": "graph_queries/security_auth_guardrail_gaps", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: urakutours/pomocare"}, "properties": {"repobilityId": 414989, "scanner": "foundry_dataset", "fingerprint": "50d0bbfa942560914c8b185d45e7c742c735c9843f9d298c8d39dbc152978ecb", "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": {"bug_fix": 1, "api_or_backend": 2, "docs_or_claims": 1, "schema_or_data": 1, "ui_or_frontend": 3, "source_or_other": 1, "dependency_or_build": 1, "security_or_secrets": 3, "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": 40, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 8, "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": 5, "comment_chain_touches_file": 8, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 22, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 8, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#4", "issue_number": "4", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-06ef3923f45fc523", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"api_or_backend": 8, "docs_or_claims": 4, "schema_or_data": 4, "ui_or_frontend": 12, "source_or_other": 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: supported_by_high_confidence_link\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#4\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#4\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#4\nRepo: urakutours/pomocare\nIssue/PR number: 4\nGraph consistency label: supported_by_high_confidence_link\nNodes: 22\nEdges: 40\nNode types: {'pr_file': 8, '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': 8, 'comment_chain_touches_file': 8, 'issue_chain_touches_file': 8, '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: {'ui_or_frontend': 3, 'security_or_secrets': 3, 'claimed_resolved_unverified': 3, 'api_or_backend': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'docs_or_claims': 1, 'schema_or_data': 1, 'source_or_other': 1, 'human_reported_issue_then_fix_attempt': 1, 'bug_fix': 1, 'dependency_or_build': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 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/urakutours/pomocare", "source_id": "graph-query-motif_query-1f73caef9076f785", "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": "urakutours/pomocare", "source_dataset": "graph_queries/security_auth_guardrail_gaps", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: urakutours/pomocare"}, "properties": {"repobilityId": 414988, "scanner": "foundry_dataset", "fingerprint": "036e838d071d917fc9905406864390524ea5b6892027828daea7486f8a5781eb", "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": {"bug_fix": 2, "feature": 1, "ui_or_frontend": 7, "security_or_secrets": 2, "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": 37, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 7, "chain_has_link_quality": 3, "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": 21, "node_types": {"repo": 1, "commit": 5, "thread": 1, "comment": 1, "pr_file": 7, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#2", "issue_number": "2", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-bd82513db781c330", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"ui_or_frontend": 28}}, "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: supported_by_high_confidence_link\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#2\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#2\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#2\nRepo: urakutours/pomocare\nIssue/PR number: 2\nGraph consistency label: supported_by_high_confidence_link\nNodes: 21\nEdges: 37\nNode types: {'pr_file': 7, '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': 7, 'comment_chain_touches_file': 7, 'issue_chain_touches_file': 7, '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: {'ui_or_frontend': 7, 'claimed_resolved_unverified': 3, 'security_or_secrets': 2, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'human_reported_issue_then_fix_attempt': 1, 'feature': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 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/urakutours/pomocare", "source_id": "graph-query-motif_query-4c96a79f11121e6a", "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": "urakutours/pomocare", "source_dataset": "graph_queries/security_auth_guardrail_gaps", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: urakutours/pomocare"}, "properties": {"repobilityId": 414987, "scanner": "foundry_dataset", "fingerprint": "f4b980e9fb2a0eb32fd5282040dc4bca21cb448de3643c684b3a46e8559a8b84", "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": {"source_or_other": 2, "security_or_secrets": 1, "generated_provenance": 1, "security_auth_secret": 1, "ci_pending_or_incomplete": 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": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 20, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 2, "comment_chain_has_ci": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 2, "thread_has_comment_chain": 1, "comment_chain_links_commit": 2, "comment_chain_touches_file": 2, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 14, "node_types": {"repo": 1, "commit": 2, "thread": 1, "comment": 1, "pr_file": 2, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#12", "issue_number": "12", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-39f275761e5918bb", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"source_or_other": 8}}, "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: supported_by_high_confidence_link\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#12\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#12\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#12\nRepo: urakutours/pomocare\nIssue/PR number: 12\nGraph consistency label: supported_by_high_confidence_link\nNodes: 14\nEdges: 20\nNode types: {'link_quality': 3, 'pr_file': 2, 'commit': 2, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 3, '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, '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: {'claimed_resolved_unverified': 3, 'source_or_other': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'human_reported_issue_then_fix_attempt': 1, 'security_or_secrets': 1, 'generated_provenance': 1, 'ci_pending_or_incomplete': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {'ci_pending_or_incomplete': 2}\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/urakutours/pomocare", "source_id": "graph-query-motif_query-899cf3ed68fe8d25", "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": "urakutours/pomocare", "source_dataset": "graph_queries/security_auth_guardrail_gaps", "training_usage": "assumption_check"}}}, {"ruleId": "foundry_auth_guardrail_gap", "level": "error", "message": {"text": "Foundry mined security auth guardrail gaps: urakutours/pomocare"}, "properties": {"repobilityId": 414986, "scanner": "foundry_dataset", "fingerprint": "d1de15ad2b14b3b39dd5fd71530a63999a4405286cbec1737d0e991d0050b7a4", "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": {"bug_fix": 2, "api_or_backend": 1, "docs_or_claims": 1, "schema_or_data": 1, "source_or_other": 1, "security_or_secrets": 1, "generated_provenance": 1, "security_auth_secret": 1, "ci_pending_or_incomplete": 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": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 28, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 4, "comment_chain_has_ci": 1, "chain_has_link_quality": 3, "thread_has_fix_outcome": 1, "thread_has_issue_chain": 1, "issue_chain_touches_file": 4, "thread_has_comment_chain": 1, "comment_chain_links_commit": 4, "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": 4, "thread": 1, "comment": 1, "pr_file": 4, "ci_summary": 1, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#10", "issue_number": "10", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "assumption_check", "source_motif_id": "graph-pattern-motif-thread-ecde7d58ac52ed0a", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"api_or_backend": 4, "docs_or_claims": 4, "schema_or_data": 4, "source_or_other": 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: supported_by_high_confidence_link\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#10\nEvidence:\nGraph motif: Security/auth change without enough guardrails\nMotif id: security_auth_without_guardrails\nPolarity: bad\nTraining usage: assumption_check\nSeverity: critical\nRepo: urakutours/pomocare\nThread: urakutours/pomocare#10\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#10\nRepo: urakutours/pomocare\nIssue/PR number: 10\nGraph consistency label: supported_by_high_confidence_link\nNodes: 18\nEdges: 28\nNode types: {'pr_file': 4, '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': 4, 'comment_chain_links_commit': 4, 'comment_chain_touches_file': 4, 'issue_chain_touches_file': 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: {'claimed_resolved_unverified': 3, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'security_auth_secret': 1, 'docs_or_claims': 1, 'source_or_other': 1, 'schema_or_data': 1, 'api_or_backend': 1, 'human_reported_issue_then_fix_attempt': 1, 'generated_provenance': 1, 'ci_pending_or_incomplete': 1, 'security_or_secrets': 1}\nOutcomes: {'claimed_resolved_unverified': 6}\nQuality tiers: {'high_confidence': 3}\nCI labels: {'ci_pending_or_incomplete': 2}\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/urakutours/pomocare", "source_id": "graph-query-motif_query-63f2f05e54f71486", "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": "urakutours/pomocare", "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: urakutours/pomocare"}, "properties": {"repobilityId": 408340, "scanner": "foundry_dataset", "fingerprint": "ac9a934a80f69a710d03f3678a19892622487dabca6d99437f6582d9d6c1f39b", "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, "docs_or_claims": 2, "source_or_other": 3, "mock_placeholder": 1, "security_or_auth": 1, "dependency_or_build": 2, "security_or_secrets": 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": "mock_as_real_or_placeholder", "outcomes": {"claimed_resolved_unverified": 6}, "polarity": "bad", "query_id": "mock_as_real_or_placeholder", "severity": "critical", "ci_labels": {}, "synthetic": false, "edge_count": 38, "edge_types": {"repo_has_thread": 1, "comment_has_chain": 1, "thread_has_comment": 1, "thread_touches_file": 8, "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": 3, "comment_chain_touches_file": 8, "issue_chain_has_fix_outcome": 1, "issue_chain_has_comment_chain": 1}, "node_count": 20, "node_types": {"repo": 1, "commit": 3, "thread": 1, "comment": 1, "pr_file": 8, "fix_outcome": 1, "issue_chain": 1, "link_quality": 3, "comment_chain": 1}, "query_type": "motif_query", "thread_key": "urakutours/pomocare#6", "issue_number": "6", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-1ceea8f568274961", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"docs_or_claims": 8, "source_or_other": 12, "security_or_auth": 4, "dependency_or_build": 8}}, "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: urakutours/pomocare\nThread: urakutours/pomocare#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: urakutours/pomocare\nThread: urakutours/pomocare#6\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#6\nRepo: urakutours/pomocare\nIssue/PR number: 6\nGraph consistency label: supported_by_high_confidence_link\nNodes: 20\nEdges: 38\nNode types: {'pr_file': 8, 'commit': 3, 'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'comment_chain': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'thread_touches_file': 8, 'comment_chain_touches_file': 8, 'issue_chain_touches_file': 8, 'comment_chain_links_commit': 3, 'chain_has_link_quality': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'thread_has_issue_chain': 1, 'issue_chain_has_comment_chain': 1, 'thread_has_fix_outcome': 1, 'issue_chain_has_fix_outcome': 1}\nLabels: {'source_or_other': 3, 'claimed_resolved_unverified': 3, 'docs_or_claims': 2, 'dependency_or_build': 2, 'bug_fix': 2, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'mock_placeholder': 1, 'security_or_auth': 1, 'human_reported_issue_then_fix_attempt': 1, 'security_or_secrets': 1}\nOutcomes: {'claimed_resolved_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/urakutours/pomocare", "source_id": "graph-query-motif_query-839c1f14dbb23b20", "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": "urakutours/pomocare", "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: urakutours/pomocare"}, "properties": {"repobilityId": 408339, "scanner": "foundry_dataset", "fingerprint": "de0a5478cc5df5c300f3333fcfdf36466f53b9cfda4f9a8d55a0e26d637338e7", "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": {"ui_or_frontend": 1, "generated_provenance": 1, "agent_instruction_gap": 1, "ci_pending_or_incomplete": 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": {"ci_pending_or_incomplete": 2}, "synthetic": false, "edge_count": 16, "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": 1, "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": 1, "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": "urakutours/pomocare#13", "issue_number": "13", "quality_tiers": {"high_confidence": 3}, "repo_full_name": "urakutours/pomocare", "training_usage": "hard_negative", "source_motif_id": "graph-pattern-motif-thread-be2319f52b055584", "graph_gold_label": "supported_by_high_confidence_link", "changed_file_labels": {"ui_or_frontend": 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: urakutours/pomocare\nThread: urakutours/pomocare#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: urakutours/pomocare\nThread: urakutours/pomocare#13\nGraph gold label: supported_by_high_confidence_link\nThread graph evidence:\nGitHub issue/PR evidence subgraph\nThread: urakutours/pomocare#13\nRepo: urakutours/pomocare\nIssue/PR number: 13\nGraph consistency label: supported_by_high_confidence_link\nNodes: 12\nEdges: 16\nNode types: {'link_quality': 3, 'thread': 1, 'repo': 1, 'comment': 1, 'pr_file': 1, 'comment_chain': 1, 'commit': 1, 'ci_summary': 1, 'issue_chain': 1, 'fix_outcome': 1}\nEdge types: {'chain_has_link_quality': 3, 'repo_has_thread': 1, 'thread_has_comment': 1, 'thread_touches_file': 1, 'thread_has_comment_chain': 1, 'comment_has_chain': 1, 'comment_chain_links_commit': 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: {'self_attested_unverified': 3, 'thread_has_human_issue_and_fix_context': 2, 'issue_or_pull_request_thread': 1, 'agent_instruction_gap': 1, 'ui_or_frontend': 1, 'self_attested_or_generated_fix_unverified': 1, 'generated_provenance': 1, 'ci_pending_or_incomplete': 1}\nOutcomes: {'self_attested_unverified': 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/urakutours/pomocare", "source_id": "graph-query-motif_query-7b606c58a25d31c8", "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": "urakutours/pomocare", "source_dataset": "graph_queries/mock_as_real_or_placeholder", "training_usage": "hard_negative"}}}, {"ruleId": "scanner-fd8fc8761420ca5b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 workers/src/routes/neon-auth-webhook.ts:154"}, "properties": {"repobilityId": "a56b857b56cc7c93", "scanner": "scanner-primary", "fingerprint": "fd8fc8761420ca5b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3a0c61c7e74e4aac", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 workers/src/routes/stripe-webhook.ts:31"}, "properties": {"repobilityId": "529ffbd6298cb8f7", "scanner": "scanner-primary", "fingerprint": "3a0c61c7e74e4aac", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-12ddfd70388fd58c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 supabase/functions/stripe-webhook/index.ts:68"}, "properties": {"repobilityId": "7c738a141c293866", "scanner": "scanner-primary", "fingerprint": "12ddfd70388fd58c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-299e42f8d55547db", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 supabase/functions/cancel-subscription/index.ts:99"}, "properties": {"repobilityId": "9a07ccb55d13eac4", "scanner": "scanner-primary", "fingerprint": "299e42f8d55547db", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7fecc4e11cfe3ec3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 supabase/functions/create-checkout-session/index.ts:76"}, "properties": {"repobilityId": "c2f044116d96fbdd", "scanner": "scanner-primary", "fingerprint": "7fecc4e11cfe3ec3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a1f14f3b7ede0089", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 src/App.tsx:138"}, "properties": {"repobilityId": "b64317d1557500be", "scanner": "scanner-primary", "fingerprint": "a1f14f3b7ede0089", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-7f210ef397d1b63c", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/App.tsx:264"}, "properties": {"repobilityId": "903e15ea3fb71cd0", "scanner": "scanner-primary", "fingerprint": "7f210ef397d1b63c", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-e9013ee39ceb4ed6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/App.tsx:9"}, "properties": {"repobilityId": "f3d63003b5dbefbd", "scanner": "scanner-primary", "fingerprint": "e9013ee39ceb4ed6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-69e931b14de82fda", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/settings/SettingsPanel.tsx:1307"}, "properties": {"repobilityId": "94db8402f9ee4596", "scanner": "scanner-primary", "fingerprint": "69e931b14de82fda", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-34bfde42311d89ed", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/layout/Header.tsx:90"}, "properties": {"repobilityId": "c848c722ce61f0cc", "scanner": "scanner-primary", "fingerprint": "34bfde42311d89ed", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-1e2b152136edea24", "level": "note", "message": {"text": "Icon-only button without accessible name \u2014 src/components/auth/LoginModal.tsx:160"}, "properties": {"repobilityId": "42fcfb578f947c9b", "scanner": "scanner-primary", "fingerprint": "1e2b152136edea24", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.button.no-label"]}}, {"ruleId": "scanner-072f548a354a1468", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/ads/AmazonBanner.tsx:66"}, "properties": {"repobilityId": "32ec58cd7bc936f7", "scanner": "scanner-primary", "fingerprint": "072f548a354a1468", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-917e4aa3efd375c8", "level": "none", "message": {"text": "TODO/FIXME marker in shipping code \u2014 src/components/ads/AdBanner.tsx:68"}, "properties": {"repobilityId": "1bf474884dcc407c", "scanner": "scanner-primary", "fingerprint": "917e4aa3efd375c8", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.todo-marker"]}}, {"ruleId": "scanner-30a6f9e0de6d15e9", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/stats/SessionSummary.tsx:214"}, "properties": {"repobilityId": "adc97e4a4c9445f1", "scanner": "scanner-primary", "fingerprint": "30a6f9e0de6d15e9", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-809d6568af6c01d9", "level": "none", "message": {"text": "`truncate` class without `title=` for hover reveal \u2014 src/components/stats/StatsChart.tsx:238"}, "properties": {"repobilityId": "fce4a74b811abb13", "scanner": "scanner-primary", "fingerprint": "809d6568af6c01d9", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["frontend-quality", "fq.truncate.no-title"]}}, {"ruleId": "scanner-b8d4c6b70dbfd7f1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/contexts/AuthContext.tsx:78"}, "properties": {"repobilityId": "b0560e613f912695", "scanner": "scanner-primary", "fingerprint": "b8d4c6b70dbfd7f1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-250b711d624ecbc1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/hooks/useSessions.ts:24"}, "properties": {"repobilityId": "9c706ee59e1f078c", "scanner": "scanner-primary", "fingerprint": "250b711d624ecbc1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-947919ce1129db48", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/analytics/AnalyticsService.ts:108"}, "properties": {"repobilityId": "dc8740ee0059bac5", "scanner": "scanner-primary", "fingerprint": "947919ce1129db48", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a8a8ab43361e8190", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 src/services/storage/NeonAdapter.ts:49"}, "properties": {"repobilityId": "240473730a183f02", "scanner": "scanner-primary", "fingerprint": "a8a8ab43361e8190", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7176e5d95d18d844", "level": "error", "message": {"text": "Runtime dotenv file present in repo: .env"}, "properties": {"repobilityId": "4b9c737a445874ba", "scanner": "scanner-primary", "fingerprint": "7176e5d95d18d844", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets", "config", "env-file", "runtime-env", "env_file_with_secret"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".env"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-75224d72f5983353", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in scripts/generate-screenshots.mjs:77"}, "properties": {"repobilityId": "e2b8d2243952bc96", "scanner": "scanner-primary", "fingerprint": "75224d72f5983353", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/generate-screenshots.mjs"}, "region": {"startLine": 77}}}]}, {"ruleId": "scanner-2b61c7c324a30df0", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in supabase/functions/schedule-notification/index.ts:9"}, "properties": {"repobilityId": "1bba28ae5cd3f770", "scanner": "scanner-primary", "fingerprint": "2b61c7c324a30df0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "supabase/functions/schedule-notification/index.ts"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-c2e1f14220a31afd", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in lp/js/i18n.js:369"}, "properties": {"repobilityId": "3d58b1e9710f4115", "scanner": "scanner-primary", "fingerprint": "c2e1f14220a31afd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "lp/js/i18n.js"}, "region": {"startLine": 369}}}]}, {"ruleId": "scanner-c6fffc9c7e6c6e33", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in lp/js/main.js:258"}, "properties": {"repobilityId": "7b4c4dee91d69d05", "scanner": "scanner-primary", "fingerprint": "c6fffc9c7e6c6e33", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "lp/js/main.js"}, "region": {"startLine": 258}}}]}, {"ruleId": "scanner-19188731a8af12e3", "level": "error", "message": {"text": "Possible secret in src/i18n/fr.ts"}, "properties": {"repobilityId": "fdb48674604c8435", "scanner": "scanner-primary", "fingerprint": "19188731a8af12e3", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/fr.ts"}, "region": {"startLine": 109}}}]}, {"ruleId": "scanner-19188731a8af12e3", "level": "error", "message": {"text": "Possible secret in src/i18n/fr.ts"}, "properties": {"repobilityId": "fdb48674604c8435", "scanner": "scanner-primary", "fingerprint": "19188731a8af12e3", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/fr.ts"}, "region": {"startLine": 110}}}]}, {"ruleId": "scanner-19188731a8af12e3", "level": "error", "message": {"text": "Possible secret in src/i18n/fr.ts"}, "properties": {"repobilityId": "fdb48674604c8435", "scanner": "scanner-primary", "fingerprint": "19188731a8af12e3", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/fr.ts"}, "region": {"startLine": 115}}}]}, {"ruleId": "scanner-19188731a8af12e3", "level": "error", "message": {"text": "Possible secret in src/i18n/fr.ts"}, "properties": {"repobilityId": "fdb48674604c8435", "scanner": "scanner-primary", "fingerprint": "19188731a8af12e3", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/fr.ts"}, "region": {"startLine": 134}}}]}, {"ruleId": "scanner-19188731a8af12e3", "level": "error", "message": {"text": "Possible secret in src/i18n/fr.ts"}, "properties": {"repobilityId": "fdb48674604c8435", "scanner": "scanner-primary", "fingerprint": "19188731a8af12e3", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/fr.ts"}, "region": {"startLine": 135}}}]}, {"ruleId": "scanner-19188731a8af12e3", "level": "error", "message": {"text": "Possible secret in src/i18n/fr.ts"}, "properties": {"repobilityId": "fdb48674604c8435", "scanner": "scanner-primary", "fingerprint": "19188731a8af12e3", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/fr.ts"}, "region": {"startLine": 142}}}]}, {"ruleId": "scanner-19188731a8af12e3", "level": "error", "message": {"text": "Possible secret in src/i18n/fr.ts"}, "properties": {"repobilityId": "fdb48674604c8435", "scanner": "scanner-primary", "fingerprint": "19188731a8af12e3", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/fr.ts"}, "region": {"startLine": 143}}}]}, {"ruleId": "scanner-19188731a8af12e3", "level": "error", "message": {"text": "Possible secret in src/i18n/fr.ts"}, "properties": {"repobilityId": "fdb48674604c8435", "scanner": "scanner-primary", "fingerprint": "19188731a8af12e3", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/fr.ts"}, "region": {"startLine": 148}}}]}, {"ruleId": "scanner-675d17cdbac67e60", "level": "error", "message": {"text": "Possible secret in src/i18n/en.ts"}, "properties": {"repobilityId": "bd70c83078ec02d6", "scanner": "scanner-primary", "fingerprint": "675d17cdbac67e60", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/en.ts"}, "region": {"startLine": 109}}}]}, {"ruleId": "scanner-675d17cdbac67e60", "level": "error", "message": {"text": "Possible secret in src/i18n/en.ts"}, "properties": {"repobilityId": "bd70c83078ec02d6", "scanner": "scanner-primary", "fingerprint": "675d17cdbac67e60", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/en.ts"}, "region": {"startLine": 110}}}]}, {"ruleId": "scanner-675d17cdbac67e60", "level": "error", "message": {"text": "Possible secret in src/i18n/en.ts"}, "properties": {"repobilityId": "bd70c83078ec02d6", "scanner": "scanner-primary", "fingerprint": "675d17cdbac67e60", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/en.ts"}, "region": {"startLine": 115}}}]}, {"ruleId": "scanner-675d17cdbac67e60", "level": "error", "message": {"text": "Possible secret in src/i18n/en.ts"}, "properties": {"repobilityId": "bd70c83078ec02d6", "scanner": "scanner-primary", "fingerprint": "675d17cdbac67e60", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/en.ts"}, "region": {"startLine": 134}}}]}, {"ruleId": "scanner-675d17cdbac67e60", "level": "error", "message": {"text": "Possible secret in src/i18n/en.ts"}, "properties": {"repobilityId": "bd70c83078ec02d6", "scanner": "scanner-primary", "fingerprint": "675d17cdbac67e60", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/en.ts"}, "region": {"startLine": 135}}}]}, {"ruleId": "scanner-675d17cdbac67e60", "level": "error", "message": {"text": "Possible secret in src/i18n/en.ts"}, "properties": {"repobilityId": "bd70c83078ec02d6", "scanner": "scanner-primary", "fingerprint": "675d17cdbac67e60", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/en.ts"}, "region": {"startLine": 142}}}]}, {"ruleId": "scanner-675d17cdbac67e60", "level": "error", "message": {"text": "Possible secret in src/i18n/en.ts"}, "properties": {"repobilityId": "bd70c83078ec02d6", "scanner": "scanner-primary", "fingerprint": "675d17cdbac67e60", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/en.ts"}, "region": {"startLine": 143}}}]}, {"ruleId": "scanner-675d17cdbac67e60", "level": "error", "message": {"text": "Possible secret in src/i18n/en.ts"}, "properties": {"repobilityId": "bd70c83078ec02d6", "scanner": "scanner-primary", "fingerprint": "675d17cdbac67e60", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/en.ts"}, "region": {"startLine": 148}}}]}, {"ruleId": "scanner-ba04ed0616ed6452", "level": "error", "message": {"text": "Possible secret in src/i18n/de.ts"}, "properties": {"repobilityId": "257a24f97652348b", "scanner": "scanner-primary", "fingerprint": "ba04ed0616ed6452", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/de.ts"}, "region": {"startLine": 109}}}]}, {"ruleId": "scanner-ba04ed0616ed6452", "level": "error", "message": {"text": "Possible secret in src/i18n/de.ts"}, "properties": {"repobilityId": "257a24f97652348b", "scanner": "scanner-primary", "fingerprint": "ba04ed0616ed6452", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/de.ts"}, "region": {"startLine": 110}}}]}, {"ruleId": "scanner-ba04ed0616ed6452", "level": "error", "message": {"text": "Possible secret in src/i18n/de.ts"}, "properties": {"repobilityId": "257a24f97652348b", "scanner": "scanner-primary", "fingerprint": "ba04ed0616ed6452", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/de.ts"}, "region": {"startLine": 115}}}]}, {"ruleId": "scanner-ba04ed0616ed6452", "level": "error", "message": {"text": "Possible secret in src/i18n/de.ts"}, "properties": {"repobilityId": "257a24f97652348b", "scanner": "scanner-primary", "fingerprint": "ba04ed0616ed6452", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/de.ts"}, "region": {"startLine": 134}}}]}, {"ruleId": "scanner-ba04ed0616ed6452", "level": "error", "message": {"text": "Possible secret in src/i18n/de.ts"}, "properties": {"repobilityId": "257a24f97652348b", "scanner": "scanner-primary", "fingerprint": "ba04ed0616ed6452", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/de.ts"}, "region": {"startLine": 135}}}]}, {"ruleId": "scanner-ba04ed0616ed6452", "level": "error", "message": {"text": "Possible secret in src/i18n/de.ts"}, "properties": {"repobilityId": "257a24f97652348b", "scanner": "scanner-primary", "fingerprint": "ba04ed0616ed6452", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/de.ts"}, "region": {"startLine": 142}}}]}, {"ruleId": "scanner-ba04ed0616ed6452", "level": "error", "message": {"text": "Possible secret in src/i18n/de.ts"}, "properties": {"repobilityId": "257a24f97652348b", "scanner": "scanner-primary", "fingerprint": "ba04ed0616ed6452", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/de.ts"}, "region": {"startLine": 143}}}]}, {"ruleId": "scanner-ba04ed0616ed6452", "level": "error", "message": {"text": "Possible secret in src/i18n/de.ts"}, "properties": {"repobilityId": "257a24f97652348b", "scanner": "scanner-primary", "fingerprint": "ba04ed0616ed6452", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/de.ts"}, "region": {"startLine": 148}}}]}, {"ruleId": "scanner-0395cca16d0126c6", "level": "error", "message": {"text": "Possible secret in src/i18n/es.ts"}, "properties": {"repobilityId": "3fe0e8623092a557", "scanner": "scanner-primary", "fingerprint": "0395cca16d0126c6", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/es.ts"}, "region": {"startLine": 109}}}]}, {"ruleId": "scanner-0395cca16d0126c6", "level": "error", "message": {"text": "Possible secret in src/i18n/es.ts"}, "properties": {"repobilityId": "3fe0e8623092a557", "scanner": "scanner-primary", "fingerprint": "0395cca16d0126c6", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/es.ts"}, "region": {"startLine": 110}}}]}, {"ruleId": "scanner-0395cca16d0126c6", "level": "error", "message": {"text": "Possible secret in src/i18n/es.ts"}, "properties": {"repobilityId": "3fe0e8623092a557", "scanner": "scanner-primary", "fingerprint": "0395cca16d0126c6", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/es.ts"}, "region": {"startLine": 115}}}]}, {"ruleId": "scanner-0395cca16d0126c6", "level": "error", "message": {"text": "Possible secret in src/i18n/es.ts"}, "properties": {"repobilityId": "3fe0e8623092a557", "scanner": "scanner-primary", "fingerprint": "0395cca16d0126c6", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/es.ts"}, "region": {"startLine": 134}}}]}, {"ruleId": "scanner-0395cca16d0126c6", "level": "error", "message": {"text": "Possible secret in src/i18n/es.ts"}, "properties": {"repobilityId": "3fe0e8623092a557", "scanner": "scanner-primary", "fingerprint": "0395cca16d0126c6", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/es.ts"}, "region": {"startLine": 135}}}]}, {"ruleId": "scanner-0395cca16d0126c6", "level": "error", "message": {"text": "Possible secret in src/i18n/es.ts"}, "properties": {"repobilityId": "3fe0e8623092a557", "scanner": "scanner-primary", "fingerprint": "0395cca16d0126c6", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/es.ts"}, "region": {"startLine": 142}}}]}, {"ruleId": "scanner-0395cca16d0126c6", "level": "error", "message": {"text": "Possible secret in src/i18n/es.ts"}, "properties": {"repobilityId": "3fe0e8623092a557", "scanner": "scanner-primary", "fingerprint": "0395cca16d0126c6", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/es.ts"}, "region": {"startLine": 143}}}]}, {"ruleId": "scanner-0395cca16d0126c6", "level": "error", "message": {"text": "Possible secret in src/i18n/es.ts"}, "properties": {"repobilityId": "3fe0e8623092a557", "scanner": "scanner-primary", "fingerprint": "0395cca16d0126c6", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/es.ts"}, "region": {"startLine": 148}}}]}, {"ruleId": "scanner-ceee208f4a11f516", "level": "error", "message": {"text": "Possible secret in src/i18n/pt.ts"}, "properties": {"repobilityId": "c9dbfc45a48861d2", "scanner": "scanner-primary", "fingerprint": "ceee208f4a11f516", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/pt.ts"}, "region": {"startLine": 109}}}]}, {"ruleId": "scanner-ceee208f4a11f516", "level": "error", "message": {"text": "Possible secret in src/i18n/pt.ts"}, "properties": {"repobilityId": "c9dbfc45a48861d2", "scanner": "scanner-primary", "fingerprint": "ceee208f4a11f516", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/pt.ts"}, "region": {"startLine": 110}}}]}, {"ruleId": "scanner-ceee208f4a11f516", "level": "error", "message": {"text": "Possible secret in src/i18n/pt.ts"}, "properties": {"repobilityId": "c9dbfc45a48861d2", "scanner": "scanner-primary", "fingerprint": "ceee208f4a11f516", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/pt.ts"}, "region": {"startLine": 115}}}]}, {"ruleId": "scanner-ceee208f4a11f516", "level": "error", "message": {"text": "Possible secret in src/i18n/pt.ts"}, "properties": {"repobilityId": "c9dbfc45a48861d2", "scanner": "scanner-primary", "fingerprint": "ceee208f4a11f516", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/pt.ts"}, "region": {"startLine": 134}}}]}, {"ruleId": "scanner-ceee208f4a11f516", "level": "error", "message": {"text": "Possible secret in src/i18n/pt.ts"}, "properties": {"repobilityId": "c9dbfc45a48861d2", "scanner": "scanner-primary", "fingerprint": "ceee208f4a11f516", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/pt.ts"}, "region": {"startLine": 135}}}]}, {"ruleId": "scanner-ceee208f4a11f516", "level": "error", "message": {"text": "Possible secret in src/i18n/pt.ts"}, "properties": {"repobilityId": "c9dbfc45a48861d2", "scanner": "scanner-primary", "fingerprint": "ceee208f4a11f516", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/pt.ts"}, "region": {"startLine": 142}}}]}, {"ruleId": "scanner-ceee208f4a11f516", "level": "error", "message": {"text": "Possible secret in src/i18n/pt.ts"}, "properties": {"repobilityId": "c9dbfc45a48861d2", "scanner": "scanner-primary", "fingerprint": "ceee208f4a11f516", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/pt.ts"}, "region": {"startLine": 143}}}]}, {"ruleId": "scanner-ceee208f4a11f516", "level": "error", "message": {"text": "Possible secret in src/i18n/pt.ts"}, "properties": {"repobilityId": "c9dbfc45a48861d2", "scanner": "scanner-primary", "fingerprint": "ceee208f4a11f516", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/pt.ts"}, "region": {"startLine": 148}}}]}, {"ruleId": "scanner-2cd5f20e934b2a3d", "level": "error", "message": {"text": "Possible secret in src/i18n/ja.ts"}, "properties": {"repobilityId": "faf3770c902ed957", "scanner": "scanner-primary", "fingerprint": "2cd5f20e934b2a3d", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/ja.ts"}, "region": {"startLine": 109}}}]}, {"ruleId": "scanner-2cd5f20e934b2a3d", "level": "error", "message": {"text": "Possible secret in src/i18n/ja.ts"}, "properties": {"repobilityId": "faf3770c902ed957", "scanner": "scanner-primary", "fingerprint": "2cd5f20e934b2a3d", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/ja.ts"}, "region": {"startLine": 110}}}]}, {"ruleId": "scanner-2cd5f20e934b2a3d", "level": "error", "message": {"text": "Possible secret in src/i18n/ja.ts"}, "properties": {"repobilityId": "faf3770c902ed957", "scanner": "scanner-primary", "fingerprint": "2cd5f20e934b2a3d", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/ja.ts"}, "region": {"startLine": 115}}}]}, {"ruleId": "scanner-2cd5f20e934b2a3d", "level": "error", "message": {"text": "Possible secret in src/i18n/ja.ts"}, "properties": {"repobilityId": "faf3770c902ed957", "scanner": "scanner-primary", "fingerprint": "2cd5f20e934b2a3d", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/ja.ts"}, "region": {"startLine": 134}}}]}, {"ruleId": "scanner-2cd5f20e934b2a3d", "level": "error", "message": {"text": "Possible secret in src/i18n/ja.ts"}, "properties": {"repobilityId": "faf3770c902ed957", "scanner": "scanner-primary", "fingerprint": "2cd5f20e934b2a3d", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/ja.ts"}, "region": {"startLine": 135}}}]}, {"ruleId": "scanner-2cd5f20e934b2a3d", "level": "error", "message": {"text": "Possible secret in src/i18n/ja.ts"}, "properties": {"repobilityId": "faf3770c902ed957", "scanner": "scanner-primary", "fingerprint": "2cd5f20e934b2a3d", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/ja.ts"}, "region": {"startLine": 142}}}]}, {"ruleId": "scanner-2cd5f20e934b2a3d", "level": "error", "message": {"text": "Possible secret in src/i18n/ja.ts"}, "properties": {"repobilityId": "faf3770c902ed957", "scanner": "scanner-primary", "fingerprint": "2cd5f20e934b2a3d", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/ja.ts"}, "region": {"startLine": 143}}}]}, {"ruleId": "scanner-2cd5f20e934b2a3d", "level": "error", "message": {"text": "Possible secret in src/i18n/ja.ts"}, "properties": {"repobilityId": "faf3770c902ed957", "scanner": "scanner-primary", "fingerprint": "2cd5f20e934b2a3d", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/ja.ts"}, "region": {"startLine": 148}}}]}, {"ruleId": "scanner-50f4540d04ba470f", "level": "error", "message": {"text": "Possible secret in src/i18n/it.ts"}, "properties": {"repobilityId": "fd83cfe7846e8261", "scanner": "scanner-primary", "fingerprint": "50f4540d04ba470f", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/it.ts"}, "region": {"startLine": 109}}}]}, {"ruleId": "scanner-50f4540d04ba470f", "level": "error", "message": {"text": "Possible secret in src/i18n/it.ts"}, "properties": {"repobilityId": "fd83cfe7846e8261", "scanner": "scanner-primary", "fingerprint": "50f4540d04ba470f", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/it.ts"}, "region": {"startLine": 110}}}]}, {"ruleId": "scanner-50f4540d04ba470f", "level": "error", "message": {"text": "Possible secret in src/i18n/it.ts"}, "properties": {"repobilityId": "fd83cfe7846e8261", "scanner": "scanner-primary", "fingerprint": "50f4540d04ba470f", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/it.ts"}, "region": {"startLine": 115}}}]}, {"ruleId": "scanner-50f4540d04ba470f", "level": "error", "message": {"text": "Possible secret in src/i18n/it.ts"}, "properties": {"repobilityId": "fd83cfe7846e8261", "scanner": "scanner-primary", "fingerprint": "50f4540d04ba470f", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/it.ts"}, "region": {"startLine": 134}}}]}, {"ruleId": "scanner-50f4540d04ba470f", "level": "error", "message": {"text": "Possible secret in src/i18n/it.ts"}, "properties": {"repobilityId": "fd83cfe7846e8261", "scanner": "scanner-primary", "fingerprint": "50f4540d04ba470f", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/it.ts"}, "region": {"startLine": 135}}}]}, {"ruleId": "scanner-50f4540d04ba470f", "level": "error", "message": {"text": "Possible secret in src/i18n/it.ts"}, "properties": {"repobilityId": "fd83cfe7846e8261", "scanner": "scanner-primary", "fingerprint": "50f4540d04ba470f", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/it.ts"}, "region": {"startLine": 142}}}]}, {"ruleId": "scanner-50f4540d04ba470f", "level": "error", "message": {"text": "Possible secret in src/i18n/it.ts"}, "properties": {"repobilityId": "fd83cfe7846e8261", "scanner": "scanner-primary", "fingerprint": "50f4540d04ba470f", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/it.ts"}, "region": {"startLine": 143}}}]}, {"ruleId": "scanner-50f4540d04ba470f", "level": "error", "message": {"text": "Possible secret in src/i18n/it.ts"}, "properties": {"repobilityId": "fd83cfe7846e8261", "scanner": "scanner-primary", "fingerprint": "50f4540d04ba470f", "layer": "security", "severity": "critical", "confidence": 1.0, "tags": ["secrets"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "src/i18n/it.ts"}, "region": {"startLine": 148}}}]}, {"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-b6a7a9a9b87daba8", "level": "note", "message": {"text": "Very large file: src/components/settings/SettingsPanel.tsx (2038 lines)"}, "properties": {"repobilityId": "86dd345e5de3dca6", "scanner": "scanner-primary", "fingerprint": "b6a7a9a9b87daba8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6893a6c8b0861585", "level": "warning", "message": {"text": "Very low test-to-source ratio"}, "properties": {"repobilityId": "54a7de3f06314bf0", "scanner": "scanner-primary", "fingerprint": "6893a6c8b0861585", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["tests", "coverage"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "acafaa5775bf3d49", "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": "68afe1fdf0aaff4c", "scanner": "scanner-primary", "fingerprint": "3ab5d313dda8e5f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["debug", "cleanup", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-72b2a6250083a784", "level": "warning", "message": {"text": "Placeholder or mock-heavy implementation detected"}, "properties": {"repobilityId": "b365a88174c6979c", "scanner": "scanner-primary", "fingerprint": "72b2a6250083a784", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "incomplete", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "27049489f2d4451d", "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": "2d023bbd8d182277", "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": "c336c18625b08b21", "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": "cbb0d73125f27015", "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": "93b49fdc1c84e9f3", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-122f91b7f2906dc4", "level": "warning", "message": {"text": "Agent authority lacks a verifier contract: .claude/settings.json"}, "properties": {"repobilityId": "a2967269048b6a9d", "scanner": "scanner-primary", "fingerprint": "122f91b7f2906dc4", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "verification", "claude_instruction"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".claude/settings.json"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-1409ff9c2cf4bebc", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 workers/src/index.ts:10"}, "properties": {"repobilityId": "fa618467e5022a9d", "scanner": "scanner-primary", "fingerprint": "1409ff9c2cf4bebc", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7df66a3528d75eeb", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 workers/src/routes/neon-auth-webhook.ts:46"}, "properties": {"repobilityId": "8bb86f6ee13ec53b", "scanner": "scanner-primary", "fingerprint": "7df66a3528d75eeb", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8f14fde77dcbdb2b", "level": "note", "message": {"text": "Legacy-named symbol `user_sessions_v2` in workers/src/routes/delete-account.ts:76"}, "properties": {"repobilityId": "2b8705da564496e2", "scanner": "scanner-primary", "fingerprint": "8f14fde77dcbdb2b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-89cda0ab0f93a7f5", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/components/ads/AdBanner.tsx:15"}, "properties": {"repobilityId": "e329143f39908865", "scanner": "scanner-primary", "fingerprint": "89cda0ab0f93a7f5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f3d9fd72290cd598", "level": "none", "message": {"text": "Commented-code block (6 lines) in src/contexts/AuthContext.tsx:315"}, "properties": {"repobilityId": "b24bd6d6ae77a0fa", "scanner": "scanner-primary", "fingerprint": "f3d9fd72290cd598", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fc8e9e103e258b39", "level": "none", "message": {"text": "Commented-code block (5 lines) in src/hooks/useTimer.ts:147"}, "properties": {"repobilityId": "e0fccbe4e61978fa", "scanner": "scanner-primary", "fingerprint": "fc8e9e103e258b39", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-fa3bf056ef8b9698", "level": "note", "message": {"text": "Legacy-named symbol `user_sessions_v2` in src/services/storage/NeonAdapter.ts:13"}, "properties": {"repobilityId": "54883c43600922e5", "scanner": "scanner-primary", "fingerprint": "fa3bf056ef8b9698", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-030da566069872e9", "level": "note", "message": {"text": "15 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "0519c1c0e8c1f8e4", "scanner": "scanner-primary", "fingerprint": "030da566069872e9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}]}]}