{"ok":false,"source_execution_packet":{"store_id":0,"store_name":"","source_id":null,"generated_at":"2026-06-13T04:54:37.512273+00:00","summary":{"source_count":9,"ok_count":0,"warning_count":2,"blocker_count":7,"repair_count":54,"configuration_gap_count":5,"collector_gap_count":5,"formal_collection_gap_count":17,"stability_gap_count":18,"compliance_gap_count":0,"scheduler_gap_count":9,"probe_gap_count":9},"rows":[{"source_id":"baidu_maps","provider":"baidu_maps","label":"百度地图官方 API","category":"map","channel":"official_api","section":"maps","status":"blocker","priority":"P0","configured":true,"target_count":0,"plan_state":"due","health_status":"warning","stability_status":"warning","latest_run_id":null,"latest_row_id":null,"latest_status":"","latest_checked_at":null,"latest_age_hours":null,"latest_reliability_grade":"","latest_reliability_score":null,"latest_error":"","item_count":0,"ledger_entry_present":false,"probe_status":"","probe_run_id":null,"signal_count":0,"success_rate":null,"compliance_boundary":"Use official map APIs with server-side keys, quota monitoring, and IP allowlists.","requirements":[{"code":"source_catalog","title":"Source catalog entry","status":"ok","category":"source_contract","required":true,"priority":"P2","message":"Source exists in SOURCE_SPECS.","next_action":"Keep this source in the external evidence source catalog.","acceptance":"Source has a stable source_id, provider, channel, cadence, and compliance category.","evidence":{"source_id":"baidu_maps","provider":"baidu_maps","channel":"official_api","cadence_hours":168}},{"code":"source_configuration","title":"Cloud source configuration","status":"ok","category":"configuration","required":true,"priority":"P2","message":"配置已就绪","next_action":"已具备配置，但还没有该来源的采集记录；建议立即运行外部证据采集。","acceptance":"Cloud worker can legally access this source without bypassing platform access controls.","evidence":{"configured":true,"target_count":0,"config_env":"BAIDU_MAP_API_KEY"}},{"code":"collector_plan_contract","title":"Collector plan contract","status":"ok","category":"collector","required":true,"priority":"P2","message":"Configured but no collection row exists yet; run now to create the first auditable baseline.","next_action":"Repair collection plan routing or source catalog mapping before collect-due.","acceptance":"collection_packet.collector_options can request exactly this source.","evidence":{"state":"due","collector_options":{"include_maps":true,"include_search":false,"include_dianping":false,"include_ai":false,"map_provider_ids":["baidu_maps"],"search_provider_ids":[]}}},{"code":"collection_plan_state","title":"Collection plan state","status":"ok","category":"collector","required":true,"priority":"P2","message":"Configured but no collection row exists yet; run now to create the first auditable baseline.","next_action":"Keep this source on the protected scheduler cadence.","acceptance":"Source is due, scheduled, or cooling down; protected/blocked states have an explicit repair path.","evidence":{"state":"due","reason":"Configured but no collection row exists yet; run now to create the first auditable baseline.","next_run_at":"2026-06-13T04:54:37.411602+00:00","protected_until":null}},{"code":"latest_formal_collection","title":"Latest formal collection","status":"blocker","category":"formal_collection","required":true,"priority":"P0","message":"No formal GeoPlatformEvidence row exists for this source.","next_action":"Run collect-due or repair source errors before relying on this source.","acceptance":"Latest GeoPlatformEvidence row is positive or has an auditable weak/not-found explanation.","evidence":{"run_id":null,"row_id":null,"status":"","checked_at":"","age_hours":null,"error_message":""}},{"code":"source_ledger_coverage","title":"Source ledger coverage","status":"blocker","category":"formal_collection","required":true,"priority":"P0","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","evidence":{"run_id":null,"ledger_present":false,"ledger_entry":{}}},{"code":"formal_row_quality","title":"Formal row quality","status":"blocker","category":"formal_collection","required":true,"priority":"P0","message":"No formal row exists, so quality fields cannot be verified.","next_action":"Persist checked_at, reliability score, raw payload/excerpt, URL, error, and evidence items.","acceptance":"Formal row is auditable and can be used by reliability scoring and attribution baselines.","evidence":{}},{"code":"connectivity_probe","title":"Connectivity probe evidence","status":"warning","category":"stability","required":false,"priority":"P1","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"code":"stability_signal","title":"Long-term stability signal","status":"warning","category":"stability","required":true,"priority":"P1","message":"No collection or connectivity probe signal exists in the lookback window.","next_action":"Run connectivity probe and collect-due on this source for at least two successful signals.","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","evidence":{"signal_count":0,"success_rate":null,"consecutive_blocker_count":0,"latest_status":""}},{"code":"compliance_boundary","title":"Compliance boundary","status":"ok","category":"compliance","required":true,"priority":"P2","message":"Use official map APIs with server-side keys, quota monitoring, and IP allowlists.","next_action":"Define whether this source uses official API, compliant search API, authorized sync, or AI monitor snapshots.","acceptance":"Operators can see the allowed collection boundary before retrying.","evidence":{"channel":"official_api","compliance_note":"Use official map APIs with server-side keys, quota monitoring, and IP allowlists.","ledger_compliance_note":""}},{"code":"scheduler_cadence","title":"Scheduler cadence","status":"warning","category":"scheduler","required":false,"priority":"P1","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}}],"blocker_count":3,"warning_count":3,"next_action":"Run collect-due or repair source errors before relying on this source.","operator_steps":["Run collect-due for this store/source and retain the generated run id plus source ledger.","Ensure formal rows persist checked_at, reliability score, raw payload/excerpt, and evidence items.","Run a connectivity probe before the next formal collection retry.","Collect enough successful probe and formal collection signals to satisfy the stability threshold.","Enable GEO_EXTERNAL_EVIDENCE_AUTORUN on the cloud server and confirm the scheduler thread is alive."],"acceptance_criteria":["source is configured through official API, compliant search API, authorized sync, or AI monitor snapshot","collector plan can request this source explicitly through collect-due","latest formal collection row is auditable with reliability, checked_at, raw material, and ledger coverage","connectivity probe and stability matrix prove long-term source health","operators can see the compliance boundary before every retry"]},{"source_id":"dianping_monitor","provider":"dianping","label":"大众点评同步监控","category":"life","channel":"external_sync","section":"dianping","status":"blocker","priority":"P0","configured":false,"target_count":0,"plan_state":"blocked","health_status":"blocker","stability_status":"blocker","latest_run_id":null,"latest_row_id":null,"latest_status":"","latest_checked_at":null,"latest_age_hours":null,"latest_reliability_grade":"","latest_reliability_score":null,"latest_error":"","item_count":0,"ledger_entry_present":false,"probe_status":"","probe_run_id":null,"signal_count":0,"success_rate":null,"compliance_boundary":"Use authorized Dianping/Meituan monitor targets or manually verified links; keep self and competitor targets separated.","requirements":[{"code":"source_catalog","title":"Source catalog entry","status":"ok","category":"source_contract","required":true,"priority":"P2","message":"Source exists in SOURCE_SPECS.","next_action":"Keep this source in the external evidence source catalog.","acceptance":"Source has a stable source_id, provider, channel, cadence, and compliance category.","evidence":{"source_id":"dianping_monitor","provider":"dianping","channel":"external_sync","cadence_hours":24}},{"code":"source_configuration","title":"Cloud source configuration","status":"blocker","category":"configuration","required":true,"priority":"P0","message":"未配置大众点评监控目标","next_action":"先配置大众点评监控目标（自店/竞品），并通过同步接口沉淀指标快照。","acceptance":"Cloud worker can legally access this source without bypassing platform access controls.","evidence":{"configured":false,"target_count":0,"config_env":"DIANPING_OPEN_APP_KEY / DIANPING_OPEN_APP_SECRET / DIANPING_OPEN_ACCESS_TOKEN"}},{"code":"collector_plan_contract","title":"Collector plan contract","status":"ok","category":"collector","required":true,"priority":"P2","message":"先配置大众点评监控目标（自店/竞品），并通过同步接口沉淀指标快照。","next_action":"Repair collection plan routing or source catalog mapping before collect-due.","acceptance":"collection_packet.collector_options can request exactly this source.","evidence":{"state":"blocked","collector_options":{"include_maps":false,"include_search":false,"include_dianping":true,"include_ai":false,"map_provider_ids":[],"search_provider_ids":[]}}},{"code":"collection_plan_state","title":"Collection plan state","status":"blocker","category":"collector","required":true,"priority":"P0","message":"先配置大众点评监控目标（自店/竞品），并通过同步接口沉淀指标快照。","next_action":"Repair source configuration, authorization, target setup, or latest blocking error.","acceptance":"Source is due, scheduled, or cooling down; protected/blocked states have an explicit repair path.","evidence":{"state":"blocked","reason":"先配置大众点评监控目标（自店/竞品），并通过同步接口沉淀指标快照。","next_run_at":"2026-06-13T04:54:37.419300+00:00","protected_until":null}},{"code":"latest_formal_collection","title":"Latest formal collection","status":"blocker","category":"formal_collection","required":true,"priority":"P0","message":"No formal GeoPlatformEvidence row exists for this source.","next_action":"Run collect-due or repair source errors before relying on this source.","acceptance":"Latest GeoPlatformEvidence row is positive or has an auditable weak/not-found explanation.","evidence":{"run_id":null,"row_id":null,"status":"","checked_at":"","age_hours":null,"error_message":""}},{"code":"source_ledger_coverage","title":"Source ledger coverage","status":"blocker","category":"formal_collection","required":true,"priority":"P0","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","evidence":{"run_id":null,"ledger_present":false,"ledger_entry":{}}},{"code":"formal_row_quality","title":"Formal row quality","status":"blocker","category":"formal_collection","required":true,"priority":"P0","message":"No formal row exists, so quality fields cannot be verified.","next_action":"Persist checked_at, reliability score, raw payload/excerpt, URL, error, and evidence items.","acceptance":"Formal row is auditable and can be used by reliability scoring and attribution baselines.","evidence":{}},{"code":"connectivity_probe","title":"Connectivity probe evidence","status":"warning","category":"stability","required":false,"priority":"P1","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"code":"stability_signal","title":"Long-term stability signal","status":"blocker","category":"stability","required":true,"priority":"P0","message":"Health matrix has a configuration, authorization, or latest-source blocker.","next_action":"先配置大众点评监控目标（自店/竞品），并通过同步接口沉淀指标快照。","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","evidence":{"signal_count":0,"success_rate":null,"consecutive_blocker_count":0,"latest_status":""}},{"code":"compliance_boundary","title":"Compliance boundary","status":"ok","category":"compliance","required":true,"priority":"P2","message":"Use authorized Dianping/Meituan monitor targets or manually verified links; keep self and competitor targets separated.","next_action":"Define whether this source uses official API, compliant search API, authorized sync, or AI monitor snapshots.","acceptance":"Operators can see the allowed collection boundary before retrying.","evidence":{"channel":"external_sync","compliance_note":"Use authorized Dianping/Meituan monitor targets or manually verified links; keep self and competitor targets separated.","ledger_compliance_note":""}},{"code":"scheduler_cadence","title":"Scheduler cadence","status":"warning","category":"scheduler","required":false,"priority":"P1","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}}],"blocker_count":6,"warning_count":2,"next_action":"先配置大众点评监控目标（自店/竞品），并通过同步接口沉淀指标快照。","operator_steps":["Configure the required API key, authorized sync target, or real-user monitor target for this source.","Repair the source collection plan so collect-due can request this source explicitly.","Run collect-due for this store/source and retain the generated run id plus source ledger.","Ensure formal rows persist checked_at, reliability score, raw payload/excerpt, and evidence items.","Run a connectivity probe before the next formal collection retry.","Collect enough successful probe and formal collection signals to satisfy the stability threshold.","Enable GEO_EXTERNAL_EVIDENCE_AUTORUN on the cloud server and confirm the scheduler thread is alive."],"acceptance_criteria":["source is configured through official API, compliant search API, authorized sync, or AI monitor snapshot","collector plan can request this source explicitly through collect-due","latest formal collection row is auditable with reliability, checked_at, raw material, and ledger coverage","connectivity probe and stability matrix prove long-term source health","operators can see the compliance boundary before every retry"]},{"source_id":"dianping_search","provider":"dianping","label":"大众点评公开搜索","category":"life","channel":"search_api","section":"search","status":"blocker","priority":"P0","configured":false,"target_count":0,"plan_state":"blocked","health_status":"blocker","stability_status":"blocker","latest_run_id":77,"latest_row_id":446,"latest_status":"found","latest_checked_at":"2026-06-13T01:10:46.999286","latest_age_hours":3,"latest_reliability_grade":"A","latest_reliability_score":91.2,"latest_error":null,"item_count":2,"ledger_entry_present":false,"probe_status":"","probe_run_id":null,"signal_count":30,"success_rate":100.0,"compliance_boundary":"Use compliant public search APIs only; do not bypass platform login, captcha, robots, or access controls.","requirements":[{"code":"source_catalog","title":"Source catalog entry","status":"ok","category":"source_contract","required":true,"priority":"P2","message":"Source exists in SOURCE_SPECS.","next_action":"Keep this source in the external evidence source catalog.","acceptance":"Source has a stable source_id, provider, channel, cadence, and compliance category.","evidence":{"source_id":"dianping_search","provider":"dianping","channel":"search_api","cadence_hours":72}},{"code":"source_configuration","title":"Cloud source configuration","status":"blocker","category":"configuration","required":true,"priority":"P0","message":"缺少环境变量：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Cloud worker can legally access this source without bypassing platform access controls.","evidence":{"configured":false,"target_count":0,"config_env":"BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY"}},{"code":"collector_plan_contract","title":"Collector plan contract","status":"ok","category":"collector","required":true,"priority":"P2","message":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_action":"Repair collection plan routing or source catalog mapping before collect-due.","acceptance":"collection_packet.collector_options can request exactly this source.","evidence":{"state":"blocked","collector_options":{"include_maps":false,"include_search":true,"include_dianping":false,"include_ai":false,"map_provider_ids":[],"search_provider_ids":["dianping"]}}},{"code":"collection_plan_state","title":"Collection plan state","status":"blocker","category":"collector","required":true,"priority":"P0","message":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_action":"Repair source configuration, authorization, target setup, or latest blocking error.","acceptance":"Source is due, scheduled, or cooling down; protected/blocked states have an explicit repair path.","evidence":{"state":"blocked","reason":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_run_at":"2026-06-16T01:10:46.999286+00:00","protected_until":null}},{"code":"latest_formal_collection","title":"Latest formal collection","status":"ok","category":"formal_collection","required":true,"priority":"P2","message":"Latest formal collection row is positive.","next_action":"Run collect-due or repair source errors before relying on this source.","acceptance":"Latest GeoPlatformEvidence row is positive or has an auditable weak/not-found explanation.","evidence":{"run_id":77,"row_id":446,"status":"found","checked_at":"2026-06-13T01:10:46.999286","age_hours":3,"error_message":null}},{"code":"source_ledger_coverage","title":"Source ledger coverage","status":"warning","category":"formal_collection","required":true,"priority":"P1","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","evidence":{"run_id":77,"ledger_present":false,"ledger_entry":{}}},{"code":"formal_row_quality","title":"Formal row quality","status":"ok","category":"formal_collection","required":true,"priority":"P2","message":"Formal row retains checked_at, reliability, and raw/error evidence material.","next_action":"Persist checked_at, reliability score, raw payload/excerpt, URL, error, and evidence items.","acceptance":"Formal row is auditable and can be used by reliability scoring and attribution baselines.","evidence":{"checked_at":true,"reliability":true,"raw_material":true,"item_count":2}},{"code":"connectivity_probe","title":"Connectivity probe evidence","status":"warning","category":"stability","required":false,"priority":"P1","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"code":"stability_signal","title":"Long-term stability signal","status":"blocker","category":"stability","required":true,"priority":"P0","message":"Health matrix has a configuration, authorization, or latest-source blocker.","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","evidence":{"signal_count":30,"success_rate":100.0,"consecutive_blocker_count":0,"latest_status":"found"}},{"code":"compliance_boundary","title":"Compliance boundary","status":"ok","category":"compliance","required":true,"priority":"P2","message":"Use compliant public search APIs only; do not bypass platform login, captcha, robots, or access controls.","next_action":"Define whether this source uses official API, compliant search API, authorized sync, or AI monitor snapshots.","acceptance":"Operators can see the allowed collection boundary before retrying.","evidence":{"channel":"search_api","compliance_note":"Use compliant public search APIs only; do not bypass platform login, captcha, robots, or access controls.","ledger_compliance_note":""}},{"code":"scheduler_cadence","title":"Scheduler cadence","status":"warning","category":"scheduler","required":false,"priority":"P1","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}}],"blocker_count":3,"warning_count":3,"next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","operator_steps":["Configure the required API key, authorized sync target, or real-user monitor target for this source.","Repair the source collection plan so collect-due can request this source explicitly.","Run collect-due for this store/source and retain the generated run id plus source ledger.","Run a connectivity probe before the next formal collection retry.","Collect enough successful probe and formal collection signals to satisfy the stability threshold.","Enable GEO_EXTERNAL_EVIDENCE_AUTORUN on the cloud server and confirm the scheduler thread is alive."],"acceptance_criteria":["source is configured through official API, compliant search API, authorized sync, or AI monitor snapshot","collector plan can request this source explicitly through collect-due","latest formal collection row is auditable with reliability, checked_at, raw material, and ledger coverage","connectivity probe and stability matrix prove long-term source health","operators can see the compliance boundary before every retry"]},{"source_id":"douyin_search","provider":"douyin","label":"抖音公开搜索","category":"social","channel":"search_api","section":"search","status":"blocker","priority":"P0","configured":false,"target_count":0,"plan_state":"blocked","health_status":"blocker","stability_status":"blocker","latest_run_id":77,"latest_row_id":448,"latest_status":"found","latest_checked_at":"2026-06-13T01:10:46.999286","latest_age_hours":3,"latest_reliability_grade":"B","latest_reliability_score":79.2,"latest_error":null,"item_count":4,"ledger_entry_present":false,"probe_status":"","probe_run_id":null,"signal_count":30,"success_rate":100.0,"compliance_boundary":"Use compliant public search APIs only; do not bypass platform login, captcha, robots, or access controls.","requirements":[{"code":"source_catalog","title":"Source catalog entry","status":"ok","category":"source_contract","required":true,"priority":"P2","message":"Source exists in SOURCE_SPECS.","next_action":"Keep this source in the external evidence source catalog.","acceptance":"Source has a stable source_id, provider, channel, cadence, and compliance category.","evidence":{"source_id":"douyin_search","provider":"douyin","channel":"search_api","cadence_hours":48}},{"code":"source_configuration","title":"Cloud source configuration","status":"blocker","category":"configuration","required":true,"priority":"P0","message":"缺少环境变量：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Cloud worker can legally access this source without bypassing platform access controls.","evidence":{"configured":false,"target_count":0,"config_env":"BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY"}},{"code":"collector_plan_contract","title":"Collector plan contract","status":"ok","category":"collector","required":true,"priority":"P2","message":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_action":"Repair collection plan routing or source catalog mapping before collect-due.","acceptance":"collection_packet.collector_options can request exactly this source.","evidence":{"state":"blocked","collector_options":{"include_maps":false,"include_search":true,"include_dianping":false,"include_ai":false,"map_provider_ids":[],"search_provider_ids":["douyin"]}}},{"code":"collection_plan_state","title":"Collection plan state","status":"blocker","category":"collector","required":true,"priority":"P0","message":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_action":"Repair source configuration, authorization, target setup, or latest blocking error.","acceptance":"Source is due, scheduled, or cooling down; protected/blocked states have an explicit repair path.","evidence":{"state":"blocked","reason":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_run_at":"2026-06-15T01:10:46.999286+00:00","protected_until":null}},{"code":"latest_formal_collection","title":"Latest formal collection","status":"ok","category":"formal_collection","required":true,"priority":"P2","message":"Latest formal collection row is positive.","next_action":"Run collect-due or repair source errors before relying on this source.","acceptance":"Latest GeoPlatformEvidence row is positive or has an auditable weak/not-found explanation.","evidence":{"run_id":77,"row_id":448,"status":"found","checked_at":"2026-06-13T01:10:46.999286","age_hours":3,"error_message":null}},{"code":"source_ledger_coverage","title":"Source ledger coverage","status":"warning","category":"formal_collection","required":true,"priority":"P1","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","evidence":{"run_id":77,"ledger_present":false,"ledger_entry":{}}},{"code":"formal_row_quality","title":"Formal row quality","status":"ok","category":"formal_collection","required":true,"priority":"P2","message":"Formal row retains checked_at, reliability, and raw/error evidence material.","next_action":"Persist checked_at, reliability score, raw payload/excerpt, URL, error, and evidence items.","acceptance":"Formal row is auditable and can be used by reliability scoring and attribution baselines.","evidence":{"checked_at":true,"reliability":true,"raw_material":true,"item_count":4}},{"code":"connectivity_probe","title":"Connectivity probe evidence","status":"warning","category":"stability","required":false,"priority":"P1","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"code":"stability_signal","title":"Long-term stability signal","status":"blocker","category":"stability","required":true,"priority":"P0","message":"Health matrix has a configuration, authorization, or latest-source blocker.","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","evidence":{"signal_count":30,"success_rate":100.0,"consecutive_blocker_count":0,"latest_status":"found"}},{"code":"compliance_boundary","title":"Compliance boundary","status":"ok","category":"compliance","required":true,"priority":"P2","message":"Use compliant public search APIs only; do not bypass platform login, captcha, robots, or access controls.","next_action":"Define whether this source uses official API, compliant search API, authorized sync, or AI monitor snapshots.","acceptance":"Operators can see the allowed collection boundary before retrying.","evidence":{"channel":"search_api","compliance_note":"Use compliant public search APIs only; do not bypass platform login, captcha, robots, or access controls.","ledger_compliance_note":""}},{"code":"scheduler_cadence","title":"Scheduler cadence","status":"warning","category":"scheduler","required":false,"priority":"P1","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}}],"blocker_count":3,"warning_count":3,"next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","operator_steps":["Configure the required API key, authorized sync target, or real-user monitor target for this source.","Repair the source collection plan so collect-due can request this source explicitly.","Run collect-due for this store/source and retain the generated run id plus source ledger.","Run a connectivity probe before the next formal collection retry.","Collect enough successful probe and formal collection signals to satisfy the stability threshold.","Enable GEO_EXTERNAL_EVIDENCE_AUTORUN on the cloud server and confirm the scheduler thread is alive."],"acceptance_criteria":["source is configured through official API, compliant search API, authorized sync, or AI monitor snapshot","collector plan can request this source explicitly through collect-due","latest formal collection row is auditable with reliability, checked_at, raw material, and ledger coverage","connectivity probe and stability matrix prove long-term source health","operators can see the compliance boundary before every retry"]},{"source_id":"meituan_search","provider":"meituan","label":"美团公开搜索","category":"life","channel":"search_api","section":"search","status":"blocker","priority":"P0","configured":false,"target_count":0,"plan_state":"blocked","health_status":"blocker","stability_status":"blocker","latest_run_id":77,"latest_row_id":445,"latest_status":"found","latest_checked_at":"2026-06-13T01:10:46.999286","latest_age_hours":3,"latest_reliability_grade":"A","latest_reliability_score":91.2,"latest_error":null,"item_count":2,"ledger_entry_present":false,"probe_status":"","probe_run_id":null,"signal_count":30,"success_rate":100.0,"compliance_boundary":"Use compliant public search APIs only; do not bypass platform login, captcha, robots, or access controls.","requirements":[{"code":"source_catalog","title":"Source catalog entry","status":"ok","category":"source_contract","required":true,"priority":"P2","message":"Source exists in SOURCE_SPECS.","next_action":"Keep this source in the external evidence source catalog.","acceptance":"Source has a stable source_id, provider, channel, cadence, and compliance category.","evidence":{"source_id":"meituan_search","provider":"meituan","channel":"search_api","cadence_hours":72}},{"code":"source_configuration","title":"Cloud source configuration","status":"blocker","category":"configuration","required":true,"priority":"P0","message":"缺少环境变量：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Cloud worker can legally access this source without bypassing platform access controls.","evidence":{"configured":false,"target_count":0,"config_env":"BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY"}},{"code":"collector_plan_contract","title":"Collector plan contract","status":"ok","category":"collector","required":true,"priority":"P2","message":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_action":"Repair collection plan routing or source catalog mapping before collect-due.","acceptance":"collection_packet.collector_options can request exactly this source.","evidence":{"state":"blocked","collector_options":{"include_maps":false,"include_search":true,"include_dianping":false,"include_ai":false,"map_provider_ids":[],"search_provider_ids":["meituan"]}}},{"code":"collection_plan_state","title":"Collection plan state","status":"blocker","category":"collector","required":true,"priority":"P0","message":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_action":"Repair source configuration, authorization, target setup, or latest blocking error.","acceptance":"Source is due, scheduled, or cooling down; protected/blocked states have an explicit repair path.","evidence":{"state":"blocked","reason":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_run_at":"2026-06-16T01:10:46.999286+00:00","protected_until":null}},{"code":"latest_formal_collection","title":"Latest formal collection","status":"ok","category":"formal_collection","required":true,"priority":"P2","message":"Latest formal collection row is positive.","next_action":"Run collect-due or repair source errors before relying on this source.","acceptance":"Latest GeoPlatformEvidence row is positive or has an auditable weak/not-found explanation.","evidence":{"run_id":77,"row_id":445,"status":"found","checked_at":"2026-06-13T01:10:46.999286","age_hours":3,"error_message":null}},{"code":"source_ledger_coverage","title":"Source ledger coverage","status":"warning","category":"formal_collection","required":true,"priority":"P1","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","evidence":{"run_id":77,"ledger_present":false,"ledger_entry":{}}},{"code":"formal_row_quality","title":"Formal row quality","status":"ok","category":"formal_collection","required":true,"priority":"P2","message":"Formal row retains checked_at, reliability, and raw/error evidence material.","next_action":"Persist checked_at, reliability score, raw payload/excerpt, URL, error, and evidence items.","acceptance":"Formal row is auditable and can be used by reliability scoring and attribution baselines.","evidence":{"checked_at":true,"reliability":true,"raw_material":true,"item_count":2}},{"code":"connectivity_probe","title":"Connectivity probe evidence","status":"warning","category":"stability","required":false,"priority":"P1","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"code":"stability_signal","title":"Long-term stability signal","status":"blocker","category":"stability","required":true,"priority":"P0","message":"Health matrix has a configuration, authorization, or latest-source blocker.","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","evidence":{"signal_count":30,"success_rate":100.0,"consecutive_blocker_count":0,"latest_status":"found"}},{"code":"compliance_boundary","title":"Compliance boundary","status":"ok","category":"compliance","required":true,"priority":"P2","message":"Use compliant public search APIs only; do not bypass platform login, captcha, robots, or access controls.","next_action":"Define whether this source uses official API, compliant search API, authorized sync, or AI monitor snapshots.","acceptance":"Operators can see the allowed collection boundary before retrying.","evidence":{"channel":"search_api","compliance_note":"Use compliant public search APIs only; do not bypass platform login, captcha, robots, or access controls.","ledger_compliance_note":""}},{"code":"scheduler_cadence","title":"Scheduler cadence","status":"warning","category":"scheduler","required":false,"priority":"P1","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}}],"blocker_count":3,"warning_count":3,"next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","operator_steps":["Configure the required API key, authorized sync target, or real-user monitor target for this source.","Repair the source collection plan so collect-due can request this source explicitly.","Run collect-due for this store/source and retain the generated run id plus source ledger.","Run a connectivity probe before the next formal collection retry.","Collect enough successful probe and formal collection signals to satisfy the stability threshold.","Enable GEO_EXTERNAL_EVIDENCE_AUTORUN on the cloud server and confirm the scheduler thread is alive."],"acceptance_criteria":["source is configured through official API, compliant search API, authorized sync, or AI monitor snapshot","collector plan can request this source explicitly through collect-due","latest formal collection row is auditable with reliability, checked_at, raw material, and ledger coverage","connectivity probe and stability matrix prove long-term source health","operators can see the compliance boundary before every retry"]},{"source_id":"tencent_maps","provider":"tencent_maps","label":"腾讯地图官方 API","category":"map","channel":"official_api","section":"maps","status":"blocker","priority":"P0","configured":true,"target_count":0,"plan_state":"due","health_status":"warning","stability_status":"warning","latest_run_id":null,"latest_row_id":null,"latest_status":"","latest_checked_at":null,"latest_age_hours":null,"latest_reliability_grade":"","latest_reliability_score":null,"latest_error":"","item_count":0,"ledger_entry_present":false,"probe_status":"","probe_run_id":null,"signal_count":0,"success_rate":null,"compliance_boundary":"Use official map APIs with server-side keys, quota monitoring, and IP allowlists.","requirements":[{"code":"source_catalog","title":"Source catalog entry","status":"ok","category":"source_contract","required":true,"priority":"P2","message":"Source exists in SOURCE_SPECS.","next_action":"Keep this source in the external evidence source catalog.","acceptance":"Source has a stable source_id, provider, channel, cadence, and compliance category.","evidence":{"source_id":"tencent_maps","provider":"tencent_maps","channel":"official_api","cadence_hours":168}},{"code":"source_configuration","title":"Cloud source configuration","status":"ok","category":"configuration","required":true,"priority":"P2","message":"配置已就绪","next_action":"已具备配置，但还没有该来源的采集记录；建议立即运行外部证据采集。","acceptance":"Cloud worker can legally access this source without bypassing platform access controls.","evidence":{"configured":true,"target_count":0,"config_env":"TENCENT_MAP_API_KEY"}},{"code":"collector_plan_contract","title":"Collector plan contract","status":"ok","category":"collector","required":true,"priority":"P2","message":"Configured but no collection row exists yet; run now to create the first auditable baseline.","next_action":"Repair collection plan routing or source catalog mapping before collect-due.","acceptance":"collection_packet.collector_options can request exactly this source.","evidence":{"state":"due","collector_options":{"include_maps":true,"include_search":false,"include_dianping":false,"include_ai":false,"map_provider_ids":["tencent_maps"],"search_provider_ids":[]}}},{"code":"collection_plan_state","title":"Collection plan state","status":"ok","category":"collector","required":true,"priority":"P2","message":"Configured but no collection row exists yet; run now to create the first auditable baseline.","next_action":"Keep this source on the protected scheduler cadence.","acceptance":"Source is due, scheduled, or cooling down; protected/blocked states have an explicit repair path.","evidence":{"state":"due","reason":"Configured but no collection row exists yet; run now to create the first auditable baseline.","next_run_at":"2026-06-13T04:54:37.412271+00:00","protected_until":null}},{"code":"latest_formal_collection","title":"Latest formal collection","status":"blocker","category":"formal_collection","required":true,"priority":"P0","message":"No formal GeoPlatformEvidence row exists for this source.","next_action":"Run collect-due or repair source errors before relying on this source.","acceptance":"Latest GeoPlatformEvidence row is positive or has an auditable weak/not-found explanation.","evidence":{"run_id":null,"row_id":null,"status":"","checked_at":"","age_hours":null,"error_message":""}},{"code":"source_ledger_coverage","title":"Source ledger coverage","status":"blocker","category":"formal_collection","required":true,"priority":"P0","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","evidence":{"run_id":null,"ledger_present":false,"ledger_entry":{}}},{"code":"formal_row_quality","title":"Formal row quality","status":"blocker","category":"formal_collection","required":true,"priority":"P0","message":"No formal row exists, so quality fields cannot be verified.","next_action":"Persist checked_at, reliability score, raw payload/excerpt, URL, error, and evidence items.","acceptance":"Formal row is auditable and can be used by reliability scoring and attribution baselines.","evidence":{}},{"code":"connectivity_probe","title":"Connectivity probe evidence","status":"warning","category":"stability","required":false,"priority":"P1","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"code":"stability_signal","title":"Long-term stability signal","status":"warning","category":"stability","required":true,"priority":"P1","message":"No collection or connectivity probe signal exists in the lookback window.","next_action":"Run connectivity probe and collect-due on this source for at least two successful signals.","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","evidence":{"signal_count":0,"success_rate":null,"consecutive_blocker_count":0,"latest_status":""}},{"code":"compliance_boundary","title":"Compliance boundary","status":"ok","category":"compliance","required":true,"priority":"P2","message":"Use official map APIs with server-side keys, quota monitoring, and IP allowlists.","next_action":"Define whether this source uses official API, compliant search API, authorized sync, or AI monitor snapshots.","acceptance":"Operators can see the allowed collection boundary before retrying.","evidence":{"channel":"official_api","compliance_note":"Use official map APIs with server-side keys, quota monitoring, and IP allowlists.","ledger_compliance_note":""}},{"code":"scheduler_cadence","title":"Scheduler cadence","status":"warning","category":"scheduler","required":false,"priority":"P1","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}}],"blocker_count":3,"warning_count":3,"next_action":"Run collect-due or repair source errors before relying on this source.","operator_steps":["Run collect-due for this store/source and retain the generated run id plus source ledger.","Ensure formal rows persist checked_at, reliability score, raw payload/excerpt, and evidence items.","Run a connectivity probe before the next formal collection retry.","Collect enough successful probe and formal collection signals to satisfy the stability threshold.","Enable GEO_EXTERNAL_EVIDENCE_AUTORUN on the cloud server and confirm the scheduler thread is alive."],"acceptance_criteria":["source is configured through official API, compliant search API, authorized sync, or AI monitor snapshot","collector plan can request this source explicitly through collect-due","latest formal collection row is auditable with reliability, checked_at, raw material, and ledger coverage","connectivity probe and stability matrix prove long-term source health","operators can see the compliance boundary before every retry"]},{"source_id":"xiaohongshu_search","provider":"xiaohongshu","label":"小红书公开搜索","category":"social","channel":"search_api","section":"search","status":"blocker","priority":"P0","configured":false,"target_count":0,"plan_state":"blocked","health_status":"blocker","stability_status":"blocker","latest_run_id":77,"latest_row_id":447,"latest_status":"found","latest_checked_at":"2026-06-13T01:10:46.999286","latest_age_hours":3,"latest_reliability_grade":"A","latest_reliability_score":91.2,"latest_error":null,"item_count":2,"ledger_entry_present":false,"probe_status":"","probe_run_id":null,"signal_count":30,"success_rate":73.3,"compliance_boundary":"Use compliant public search APIs only; do not bypass platform login, captcha, robots, or access controls.","requirements":[{"code":"source_catalog","title":"Source catalog entry","status":"ok","category":"source_contract","required":true,"priority":"P2","message":"Source exists in SOURCE_SPECS.","next_action":"Keep this source in the external evidence source catalog.","acceptance":"Source has a stable source_id, provider, channel, cadence, and compliance category.","evidence":{"source_id":"xiaohongshu_search","provider":"xiaohongshu","channel":"search_api","cadence_hours":48}},{"code":"source_configuration","title":"Cloud source configuration","status":"blocker","category":"configuration","required":true,"priority":"P0","message":"缺少环境变量：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Cloud worker can legally access this source without bypassing platform access controls.","evidence":{"configured":false,"target_count":0,"config_env":"BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY"}},{"code":"collector_plan_contract","title":"Collector plan contract","status":"ok","category":"collector","required":true,"priority":"P2","message":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_action":"Repair collection plan routing or source catalog mapping before collect-due.","acceptance":"collection_packet.collector_options can request exactly this source.","evidence":{"state":"blocked","collector_options":{"include_maps":false,"include_search":true,"include_dianping":false,"include_ai":false,"map_provider_ids":[],"search_provider_ids":["xiaohongshu"]}}},{"code":"collection_plan_state","title":"Collection plan state","status":"blocker","category":"collector","required":true,"priority":"P0","message":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_action":"Repair source configuration, authorization, target setup, or latest blocking error.","acceptance":"Source is due, scheduled, or cooling down; protected/blocked states have an explicit repair path.","evidence":{"state":"blocked","reason":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_run_at":"2026-06-15T01:10:46.999286+00:00","protected_until":null}},{"code":"latest_formal_collection","title":"Latest formal collection","status":"ok","category":"formal_collection","required":true,"priority":"P2","message":"Latest formal collection row is positive.","next_action":"Run collect-due or repair source errors before relying on this source.","acceptance":"Latest GeoPlatformEvidence row is positive or has an auditable weak/not-found explanation.","evidence":{"run_id":77,"row_id":447,"status":"found","checked_at":"2026-06-13T01:10:46.999286","age_hours":3,"error_message":null}},{"code":"source_ledger_coverage","title":"Source ledger coverage","status":"warning","category":"formal_collection","required":true,"priority":"P1","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","evidence":{"run_id":77,"ledger_present":false,"ledger_entry":{}}},{"code":"formal_row_quality","title":"Formal row quality","status":"ok","category":"formal_collection","required":true,"priority":"P2","message":"Formal row retains checked_at, reliability, and raw/error evidence material.","next_action":"Persist checked_at, reliability score, raw payload/excerpt, URL, error, and evidence items.","acceptance":"Formal row is auditable and can be used by reliability scoring and attribution baselines.","evidence":{"checked_at":true,"reliability":true,"raw_material":true,"item_count":2}},{"code":"connectivity_probe","title":"Connectivity probe evidence","status":"warning","category":"stability","required":false,"priority":"P1","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"code":"stability_signal","title":"Long-term stability signal","status":"blocker","category":"stability","required":true,"priority":"P0","message":"Health matrix has a configuration, authorization, or latest-source blocker.","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","evidence":{"signal_count":30,"success_rate":73.3,"consecutive_blocker_count":0,"latest_status":"found"}},{"code":"compliance_boundary","title":"Compliance boundary","status":"ok","category":"compliance","required":true,"priority":"P2","message":"Use compliant public search APIs only; do not bypass platform login, captcha, robots, or access controls.","next_action":"Define whether this source uses official API, compliant search API, authorized sync, or AI monitor snapshots.","acceptance":"Operators can see the allowed collection boundary before retrying.","evidence":{"channel":"search_api","compliance_note":"Use compliant public search APIs only; do not bypass platform login, captcha, robots, or access controls.","ledger_compliance_note":""}},{"code":"scheduler_cadence","title":"Scheduler cadence","status":"warning","category":"scheduler","required":false,"priority":"P1","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}}],"blocker_count":3,"warning_count":3,"next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","operator_steps":["Configure the required API key, authorized sync target, or real-user monitor target for this source.","Repair the source collection plan so collect-due can request this source explicitly.","Run collect-due for this store/source and retain the generated run id plus source ledger.","Run a connectivity probe before the next formal collection retry.","Collect enough successful probe and formal collection signals to satisfy the stability threshold.","Enable GEO_EXTERNAL_EVIDENCE_AUTORUN on the cloud server and confirm the scheduler thread is alive."],"acceptance_criteria":["source is configured through official API, compliant search API, authorized sync, or AI monitor snapshot","collector plan can request this source explicitly through collect-due","latest formal collection row is auditable with reliability, checked_at, raw material, and ledger coverage","connectivity probe and stability matrix prove long-term source health","operators can see the compliance boundary before every retry"]},{"source_id":"ai_search","provider":"ai_search","label":"AI 真实用户监测","category":"ai","channel":"ai_browser","section":"ai","status":"warning","priority":"P1","configured":true,"target_count":40,"plan_state":"due","health_status":"warning","stability_status":"warning","latest_run_id":47,"latest_row_id":239,"latest_status":"not_mentioned","latest_checked_at":"2026-06-10T08:38:21.448242","latest_age_hours":68,"latest_reliability_grade":"C","latest_reliability_score":61.0,"latest_error":null,"item_count":1,"ledger_entry_present":false,"probe_status":"","probe_run_id":null,"signal_count":15,"success_rate":26.7,"compliance_boundary":"Use configured real-user AI monitor targets and store snapshots with answer text, URL, and screenshot when available.","requirements":[{"code":"source_catalog","title":"Source catalog entry","status":"ok","category":"source_contract","required":true,"priority":"P2","message":"Source exists in SOURCE_SPECS.","next_action":"Keep this source in the external evidence source catalog.","acceptance":"Source has a stable source_id, provider, channel, cadence, and compliance category.","evidence":{"source_id":"ai_search","provider":"ai_search","channel":"ai_browser","cadence_hours":48}},{"code":"source_configuration","title":"Cloud source configuration","status":"ok","category":"configuration","required":true,"priority":"P2","message":"已配置 AI 真实用户监测目标","next_action":"近 10 条成功率只有 0%，需要观察搜索 API/平台授权稳定性。","acceptance":"Cloud worker can legally access this source without bypassing platform access controls.","evidence":{"configured":true,"target_count":40,"config_env":""}},{"code":"collector_plan_contract","title":"Collector plan contract","status":"ok","category":"collector","required":true,"priority":"P2","message":"Cadence reached (48h); collect a fresh snapshot for baseline continuity.","next_action":"Repair collection plan routing or source catalog mapping before collect-due.","acceptance":"collection_packet.collector_options can request exactly this source.","evidence":{"state":"due","collector_options":{"include_maps":false,"include_search":false,"include_dianping":false,"include_ai":true,"map_provider_ids":[],"search_provider_ids":[]}}},{"code":"collection_plan_state","title":"Collection plan state","status":"ok","category":"collector","required":true,"priority":"P2","message":"Cadence reached (48h); collect a fresh snapshot for baseline continuity.","next_action":"Keep this source on the protected scheduler cadence.","acceptance":"Source is due, scheduled, or cooling down; protected/blocked states have an explicit repair path.","evidence":{"state":"due","reason":"Cadence reached (48h); collect a fresh snapshot for baseline continuity.","next_run_at":"2026-06-12T08:38:21.448242+00:00","protected_until":null}},{"code":"latest_formal_collection","title":"Latest formal collection","status":"warning","category":"formal_collection","required":true,"priority":"P1","message":"Latest source is reachable but evidence is weak, not found, or not mentioned.","next_action":"Run collect-due or repair source errors before relying on this source.","acceptance":"Latest GeoPlatformEvidence row is positive or has an auditable weak/not-found explanation.","evidence":{"run_id":47,"row_id":239,"status":"not_mentioned","checked_at":"2026-06-10T08:38:21.448242","age_hours":68,"error_message":null}},{"code":"source_ledger_coverage","title":"Source ledger coverage","status":"warning","category":"formal_collection","required":true,"priority":"P1","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","evidence":{"run_id":47,"ledger_present":false,"ledger_entry":{}}},{"code":"formal_row_quality","title":"Formal row quality","status":"ok","category":"formal_collection","required":true,"priority":"P2","message":"Formal row retains checked_at, reliability, and raw/error evidence material.","next_action":"Persist checked_at, reliability score, raw payload/excerpt, URL, error, and evidence items.","acceptance":"Formal row is auditable and can be used by reliability scoring and attribution baselines.","evidence":{"checked_at":true,"reliability":true,"raw_material":true,"item_count":1}},{"code":"connectivity_probe","title":"Connectivity probe evidence","status":"warning","category":"stability","required":false,"priority":"P1","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"code":"stability_signal","title":"Long-term stability signal","status":"warning","category":"stability","required":true,"priority":"P1","message":"Success rate 26.7% is below target 70%.","next_action":"Review latest signal, tune aliases or targets, then keep collecting until the success rate reaches target.","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","evidence":{"signal_count":15,"success_rate":26.7,"consecutive_blocker_count":0,"latest_status":"not_mentioned"}},{"code":"compliance_boundary","title":"Compliance boundary","status":"ok","category":"compliance","required":true,"priority":"P2","message":"Use configured real-user AI monitor targets and store snapshots with answer text, URL, and screenshot when available.","next_action":"Define whether this source uses official API, compliant search API, authorized sync, or AI monitor snapshots.","acceptance":"Operators can see the allowed collection boundary before retrying.","evidence":{"channel":"ai_browser","compliance_note":"Use configured real-user AI monitor targets and store snapshots with answer text, URL, and screenshot when available.","ledger_compliance_note":""}},{"code":"scheduler_cadence","title":"Scheduler cadence","status":"warning","category":"scheduler","required":false,"priority":"P1","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}}],"blocker_count":0,"warning_count":5,"next_action":"Run collect-due or repair source errors before relying on this source.","operator_steps":["Run collect-due for this store/source and retain the generated run id plus source ledger.","Run a connectivity probe before the next formal collection retry.","Collect enough successful probe and formal collection signals to satisfy the stability threshold.","Enable GEO_EXTERNAL_EVIDENCE_AUTORUN on the cloud server and confirm the scheduler thread is alive."],"acceptance_criteria":["source is configured through official API, compliant search API, authorized sync, or AI monitor snapshot","collector plan can request this source explicitly through collect-due","latest formal collection row is auditable with reliability, checked_at, raw material, and ledger coverage","connectivity probe and stability matrix prove long-term source health","operators can see the compliance boundary before every retry"]},{"source_id":"amap","provider":"amap","label":"高德地图官方 API","category":"map","channel":"official_api","section":"maps","status":"warning","priority":"P1","configured":true,"target_count":0,"plan_state":"scheduled","health_status":"warning","stability_status":"warning","latest_run_id":12,"latest_row_id":78,"latest_status":"found_strong","latest_checked_at":"2026-06-08T11:34:00","latest_age_hours":113,"latest_reliability_grade":"C","latest_reliability_score":64.2,"latest_error":null,"item_count":2,"ledger_entry_present":false,"probe_status":"","probe_run_id":null,"signal_count":2,"success_rate":0.0,"compliance_boundary":"Use official map APIs with server-side keys, quota monitoring, and IP allowlists.","requirements":[{"code":"source_catalog","title":"Source catalog entry","status":"ok","category":"source_contract","required":true,"priority":"P2","message":"Source exists in SOURCE_SPECS.","next_action":"Keep this source in the external evidence source catalog.","acceptance":"Source has a stable source_id, provider, channel, cadence, and compliance category.","evidence":{"source_id":"amap","provider":"amap","channel":"official_api","cadence_hours":168}},{"code":"source_configuration","title":"Cloud source configuration","status":"ok","category":"configuration","required":true,"priority":"P2","message":"配置已就绪","next_action":"近 10 条成功率只有 0%，需要观察搜索 API/平台授权稳定性。","acceptance":"Cloud worker can legally access this source without bypassing platform access controls.","evidence":{"configured":true,"target_count":0,"config_env":"AMAP_API_KEY"}},{"code":"collector_plan_contract","title":"Collector plan contract","status":"ok","category":"collector","required":true,"priority":"P2","message":"Fresh enough for current cadence (168h).","next_action":"Repair collection plan routing or source catalog mapping before collect-due.","acceptance":"collection_packet.collector_options can request exactly this source.","evidence":{"state":"scheduled","collector_options":{"include_maps":true,"include_search":false,"include_dianping":false,"include_ai":false,"map_provider_ids":["amap"],"search_provider_ids":[]}}},{"code":"collection_plan_state","title":"Collection plan state","status":"ok","category":"collector","required":true,"priority":"P2","message":"Fresh enough for current cadence (168h).","next_action":"Keep this source on the protected scheduler cadence.","acceptance":"Source is due, scheduled, or cooling down; protected/blocked states have an explicit repair path.","evidence":{"state":"scheduled","reason":"Fresh enough for current cadence (168h).","next_run_at":"2026-06-15T11:34:00+00:00","protected_until":null}},{"code":"latest_formal_collection","title":"Latest formal collection","status":"warning","category":"formal_collection","required":true,"priority":"P1","message":"Latest formal collection needs review: found_strong.","next_action":"Run collect-due or repair source errors before relying on this source.","acceptance":"Latest GeoPlatformEvidence row is positive or has an auditable weak/not-found explanation.","evidence":{"run_id":12,"row_id":78,"status":"found_strong","checked_at":"2026-06-08T11:34:00","age_hours":113,"error_message":null}},{"code":"source_ledger_coverage","title":"Source ledger coverage","status":"warning","category":"formal_collection","required":true,"priority":"P1","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","evidence":{"run_id":12,"ledger_present":false,"ledger_entry":{}}},{"code":"formal_row_quality","title":"Formal row quality","status":"ok","category":"formal_collection","required":true,"priority":"P2","message":"Formal row retains checked_at, reliability, and raw/error evidence material.","next_action":"Persist checked_at, reliability score, raw payload/excerpt, URL, error, and evidence items.","acceptance":"Formal row is auditable and can be used by reliability scoring and attribution baselines.","evidence":{"checked_at":true,"reliability":true,"raw_material":true,"item_count":2}},{"code":"connectivity_probe","title":"Connectivity probe evidence","status":"warning","category":"stability","required":false,"priority":"P1","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"code":"stability_signal","title":"Long-term stability signal","status":"warning","category":"stability","required":true,"priority":"P1","message":"Success rate 0% is below target 70%.","next_action":"Review latest signal, tune aliases or targets, then keep collecting until the success rate reaches target.","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","evidence":{"signal_count":2,"success_rate":0.0,"consecutive_blocker_count":0,"latest_status":"found_strong"}},{"code":"compliance_boundary","title":"Compliance boundary","status":"ok","category":"compliance","required":true,"priority":"P2","message":"Use official map APIs with server-side keys, quota monitoring, and IP allowlists.","next_action":"Define whether this source uses official API, compliant search API, authorized sync, or AI monitor snapshots.","acceptance":"Operators can see the allowed collection boundary before retrying.","evidence":{"channel":"official_api","compliance_note":"Use official map APIs with server-side keys, quota monitoring, and IP allowlists.","ledger_compliance_note":""}},{"code":"scheduler_cadence","title":"Scheduler cadence","status":"warning","category":"scheduler","required":false,"priority":"P1","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}}],"blocker_count":0,"warning_count":5,"next_action":"Run collect-due or repair source errors before relying on this source.","operator_steps":["Run collect-due for this store/source and retain the generated run id plus source ledger.","Run a connectivity probe before the next formal collection retry.","Collect enough successful probe and formal collection signals to satisfy the stability threshold.","Enable GEO_EXTERNAL_EVIDENCE_AUTORUN on the cloud server and confirm the scheduler thread is alive."],"acceptance_criteria":["source is configured through official API, compliant search API, authorized sync, or AI monitor snapshot","collector plan can request this source explicitly through collect-due","latest formal collection row is auditable with reliability, checked_at, raw material, and ledger coverage","connectivity probe and stability matrix prove long-term source health","operators can see the compliance boundary before every retry"]}],"repair_queue":[{"id":"external_evidence_execution:all:baidu_maps:formal_row_quality","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"baidu_maps","provider":"baidu_maps","channel":"official_api","status":"blocker","priority":"P0","category":"formal_collection","requirement_code":"formal_row_quality","title":"Formal row quality","message":"No formal row exists, so quality fields cannot be verified.","next_action":"Persist checked_at, reliability score, raw payload/excerpt, URL, error, and evidence items.","acceptance":"Formal row is auditable and can be used by reliability scoring and attribution baselines.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{}},{"id":"external_evidence_execution:all:baidu_maps:latest_formal_collection","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"baidu_maps","provider":"baidu_maps","channel":"official_api","status":"blocker","priority":"P0","category":"formal_collection","requirement_code":"latest_formal_collection","title":"Latest formal collection","message":"No formal GeoPlatformEvidence row exists for this source.","next_action":"Run collect-due or repair source errors before relying on this source.","acceptance":"Latest GeoPlatformEvidence row is positive or has an auditable weak/not-found explanation.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{"run_id":null,"row_id":null,"status":"","checked_at":"","age_hours":null,"error_message":""}},{"id":"external_evidence_execution:all:baidu_maps:source_ledger_coverage","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"baidu_maps","provider":"baidu_maps","channel":"official_api","status":"blocker","priority":"P0","category":"formal_collection","requirement_code":"source_ledger_coverage","title":"Source ledger coverage","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{"run_id":null,"ledger_present":false,"ledger_entry":{}}},{"id":"external_evidence_execution:all:dianping_monitor:collection_plan_state","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"dianping_monitor","provider":"dianping","channel":"external_sync","status":"blocker","priority":"P0","category":"collector","requirement_code":"collection_plan_state","title":"Collection plan state","message":"先配置大众点评监控目标（自店/竞品），并通过同步接口沉淀指标快照。","next_action":"Repair source configuration, authorization, target setup, or latest blocking error.","acceptance":"Source is due, scheduled, or cooling down; protected/blocked states have an explicit repair path.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"state":"blocked","reason":"先配置大众点评监控目标（自店/竞品），并通过同步接口沉淀指标快照。","next_run_at":"2026-06-13T04:54:37.419300+00:00","protected_until":null}},{"id":"external_evidence_execution:all:dianping_monitor:formal_row_quality","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"dianping_monitor","provider":"dianping","channel":"external_sync","status":"blocker","priority":"P0","category":"formal_collection","requirement_code":"formal_row_quality","title":"Formal row quality","message":"No formal row exists, so quality fields cannot be verified.","next_action":"Persist checked_at, reliability score, raw payload/excerpt, URL, error, and evidence items.","acceptance":"Formal row is auditable and can be used by reliability scoring and attribution baselines.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{}},{"id":"external_evidence_execution:all:dianping_monitor:latest_formal_collection","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"dianping_monitor","provider":"dianping","channel":"external_sync","status":"blocker","priority":"P0","category":"formal_collection","requirement_code":"latest_formal_collection","title":"Latest formal collection","message":"No formal GeoPlatformEvidence row exists for this source.","next_action":"Run collect-due or repair source errors before relying on this source.","acceptance":"Latest GeoPlatformEvidence row is positive or has an auditable weak/not-found explanation.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"run_id":null,"row_id":null,"status":"","checked_at":"","age_hours":null,"error_message":""}},{"id":"external_evidence_execution:all:dianping_monitor:source_configuration","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"dianping_monitor","provider":"dianping","channel":"external_sync","status":"blocker","priority":"P0","category":"configuration","requirement_code":"source_configuration","title":"Cloud source configuration","message":"未配置大众点评监控目标","next_action":"先配置大众点评监控目标（自店/竞品），并通过同步接口沉淀指标快照。","acceptance":"Cloud worker can legally access this source without bypassing platform access controls.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"configured":false,"target_count":0,"config_env":"DIANPING_OPEN_APP_KEY / DIANPING_OPEN_APP_SECRET / DIANPING_OPEN_ACCESS_TOKEN"}},{"id":"external_evidence_execution:all:dianping_monitor:source_ledger_coverage","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"dianping_monitor","provider":"dianping","channel":"external_sync","status":"blocker","priority":"P0","category":"formal_collection","requirement_code":"source_ledger_coverage","title":"Source ledger coverage","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"run_id":null,"ledger_present":false,"ledger_entry":{}}},{"id":"external_evidence_execution:all:dianping_monitor:stability_signal","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"dianping_monitor","provider":"dianping","channel":"external_sync","status":"blocker","priority":"P0","category":"stability","requirement_code":"stability_signal","title":"Long-term stability signal","message":"Health matrix has a configuration, authorization, or latest-source blocker.","next_action":"先配置大众点评监控目标（自店/竞品），并通过同步接口沉淀指标快照。","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"signal_count":0,"success_rate":null,"consecutive_blocker_count":0,"latest_status":""}},{"id":"external_evidence_execution:all:dianping_search:collection_plan_state","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"dianping_search","provider":"dianping","channel":"search_api","status":"blocker","priority":"P0","category":"collector","requirement_code":"collection_plan_state","title":"Collection plan state","message":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_action":"Repair source configuration, authorization, target setup, or latest blocking error.","acceptance":"Source is due, scheduled, or cooling down; protected/blocked states have an explicit repair path.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"state":"blocked","reason":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_run_at":"2026-06-16T01:10:46.999286+00:00","protected_until":null}},{"id":"external_evidence_execution:all:dianping_search:source_configuration","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"dianping_search","provider":"dianping","channel":"search_api","status":"blocker","priority":"P0","category":"configuration","requirement_code":"source_configuration","title":"Cloud source configuration","message":"缺少环境变量：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Cloud worker can legally access this source without bypassing platform access controls.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"configured":false,"target_count":0,"config_env":"BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY"}},{"id":"external_evidence_execution:all:dianping_search:stability_signal","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"dianping_search","provider":"dianping","channel":"search_api","status":"blocker","priority":"P0","category":"stability","requirement_code":"stability_signal","title":"Long-term stability signal","message":"Health matrix has a configuration, authorization, or latest-source blocker.","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"signal_count":30,"success_rate":100.0,"consecutive_blocker_count":0,"latest_status":"found"}},{"id":"external_evidence_execution:all:douyin_search:collection_plan_state","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"douyin_search","provider":"douyin","channel":"search_api","status":"blocker","priority":"P0","category":"collector","requirement_code":"collection_plan_state","title":"Collection plan state","message":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_action":"Repair source configuration, authorization, target setup, or latest blocking error.","acceptance":"Source is due, scheduled, or cooling down; protected/blocked states have an explicit repair path.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"state":"blocked","reason":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_run_at":"2026-06-15T01:10:46.999286+00:00","protected_until":null}},{"id":"external_evidence_execution:all:douyin_search:source_configuration","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"douyin_search","provider":"douyin","channel":"search_api","status":"blocker","priority":"P0","category":"configuration","requirement_code":"source_configuration","title":"Cloud source configuration","message":"缺少环境变量：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Cloud worker can legally access this source without bypassing platform access controls.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"configured":false,"target_count":0,"config_env":"BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY"}},{"id":"external_evidence_execution:all:douyin_search:stability_signal","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"douyin_search","provider":"douyin","channel":"search_api","status":"blocker","priority":"P0","category":"stability","requirement_code":"stability_signal","title":"Long-term stability signal","message":"Health matrix has a configuration, authorization, or latest-source blocker.","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"signal_count":30,"success_rate":100.0,"consecutive_blocker_count":0,"latest_status":"found"}},{"id":"external_evidence_execution:all:meituan_search:collection_plan_state","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"meituan_search","provider":"meituan","channel":"search_api","status":"blocker","priority":"P0","category":"collector","requirement_code":"collection_plan_state","title":"Collection plan state","message":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_action":"Repair source configuration, authorization, target setup, or latest blocking error.","acceptance":"Source is due, scheduled, or cooling down; protected/blocked states have an explicit repair path.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"state":"blocked","reason":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_run_at":"2026-06-16T01:10:46.999286+00:00","protected_until":null}},{"id":"external_evidence_execution:all:meituan_search:source_configuration","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"meituan_search","provider":"meituan","channel":"search_api","status":"blocker","priority":"P0","category":"configuration","requirement_code":"source_configuration","title":"Cloud source configuration","message":"缺少环境变量：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Cloud worker can legally access this source without bypassing platform access controls.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"configured":false,"target_count":0,"config_env":"BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY"}},{"id":"external_evidence_execution:all:meituan_search:stability_signal","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"meituan_search","provider":"meituan","channel":"search_api","status":"blocker","priority":"P0","category":"stability","requirement_code":"stability_signal","title":"Long-term stability signal","message":"Health matrix has a configuration, authorization, or latest-source blocker.","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"signal_count":30,"success_rate":100.0,"consecutive_blocker_count":0,"latest_status":"found"}},{"id":"external_evidence_execution:all:tencent_maps:formal_row_quality","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"tencent_maps","provider":"tencent_maps","channel":"official_api","status":"blocker","priority":"P0","category":"formal_collection","requirement_code":"formal_row_quality","title":"Formal row quality","message":"No formal row exists, so quality fields cannot be verified.","next_action":"Persist checked_at, reliability score, raw payload/excerpt, URL, error, and evidence items.","acceptance":"Formal row is auditable and can be used by reliability scoring and attribution baselines.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{}},{"id":"external_evidence_execution:all:tencent_maps:latest_formal_collection","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"tencent_maps","provider":"tencent_maps","channel":"official_api","status":"blocker","priority":"P0","category":"formal_collection","requirement_code":"latest_formal_collection","title":"Latest formal collection","message":"No formal GeoPlatformEvidence row exists for this source.","next_action":"Run collect-due or repair source errors before relying on this source.","acceptance":"Latest GeoPlatformEvidence row is positive or has an auditable weak/not-found explanation.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{"run_id":null,"row_id":null,"status":"","checked_at":"","age_hours":null,"error_message":""}},{"id":"external_evidence_execution:all:tencent_maps:source_ledger_coverage","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"tencent_maps","provider":"tencent_maps","channel":"official_api","status":"blocker","priority":"P0","category":"formal_collection","requirement_code":"source_ledger_coverage","title":"Source ledger coverage","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{"run_id":null,"ledger_present":false,"ledger_entry":{}}},{"id":"external_evidence_execution:all:xiaohongshu_search:collection_plan_state","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"xiaohongshu_search","provider":"xiaohongshu","channel":"search_api","status":"blocker","priority":"P0","category":"collector","requirement_code":"collection_plan_state","title":"Collection plan state","message":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_action":"Repair source configuration, authorization, target setup, or latest blocking error.","acceptance":"Source is due, scheduled, or cooling down; protected/blocked states have an explicit repair path.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"state":"blocked","reason":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","next_run_at":"2026-06-15T01:10:46.999286+00:00","protected_until":null}},{"id":"external_evidence_execution:all:xiaohongshu_search:source_configuration","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"xiaohongshu_search","provider":"xiaohongshu","channel":"search_api","status":"blocker","priority":"P0","category":"configuration","requirement_code":"source_configuration","title":"Cloud source configuration","message":"缺少环境变量：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Cloud worker can legally access this source without bypassing platform access controls.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"configured":false,"target_count":0,"config_env":"BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY"}},{"id":"external_evidence_execution:all:xiaohongshu_search:stability_signal","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"xiaohongshu_search","provider":"xiaohongshu","channel":"search_api","status":"blocker","priority":"P0","category":"stability","requirement_code":"stability_signal","title":"Long-term stability signal","message":"Health matrix has a configuration, authorization, or latest-source blocker.","next_action":"先补齐配置：BING_SEARCH_API_KEY / SERPAPI_API_KEY / BRAVE_SEARCH_API_KEY / TAVILY_API_KEY。","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"signal_count":30,"success_rate":73.3,"consecutive_blocker_count":0,"latest_status":"found"}},{"id":"external_evidence_execution:all:ai_search:connectivity_probe","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"ai_search","provider":"ai_search","channel":"ai_browser","status":"warning","priority":"P1","category":"stability","requirement_code":"connectivity_probe","title":"Connectivity probe evidence","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","action_url":"/geo/evidence","latest_run_id":47,"latest_status":"not_mentioned","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"id":"external_evidence_execution:all:ai_search:latest_formal_collection","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"ai_search","provider":"ai_search","channel":"ai_browser","status":"warning","priority":"P1","category":"formal_collection","requirement_code":"latest_formal_collection","title":"Latest formal collection","message":"Latest source is reachable but evidence is weak, not found, or not mentioned.","next_action":"Run collect-due or repair source errors before relying on this source.","acceptance":"Latest GeoPlatformEvidence row is positive or has an auditable weak/not-found explanation.","action_url":"/geo/evidence","latest_run_id":47,"latest_status":"not_mentioned","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{"run_id":47,"row_id":239,"status":"not_mentioned","checked_at":"2026-06-10T08:38:21.448242","age_hours":68,"error_message":null}},{"id":"external_evidence_execution:all:ai_search:scheduler_cadence","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"ai_search","provider":"ai_search","channel":"ai_browser","status":"warning","priority":"P1","category":"scheduler","requirement_code":"scheduler_cadence","title":"Scheduler cadence","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","action_url":"/geo/evidence","latest_run_id":47,"latest_status":"not_mentioned","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}},{"id":"external_evidence_execution:all:ai_search:source_ledger_coverage","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"ai_search","provider":"ai_search","channel":"ai_browser","status":"warning","priority":"P1","category":"formal_collection","requirement_code":"source_ledger_coverage","title":"Source ledger coverage","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","action_url":"/geo/evidence","latest_run_id":47,"latest_status":"not_mentioned","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{"run_id":47,"ledger_present":false,"ledger_entry":{}}},{"id":"external_evidence_execution:all:ai_search:stability_signal","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"ai_search","provider":"ai_search","channel":"ai_browser","status":"warning","priority":"P1","category":"stability","requirement_code":"stability_signal","title":"Long-term stability signal","message":"Success rate 26.7% is below target 70%.","next_action":"Review latest signal, tune aliases or targets, then keep collecting until the success rate reaches target.","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","action_url":"/geo/evidence","latest_run_id":47,"latest_status":"not_mentioned","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{"signal_count":15,"success_rate":26.7,"consecutive_blocker_count":0,"latest_status":"not_mentioned"}},{"id":"external_evidence_execution:all:amap:connectivity_probe","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"amap","provider":"amap","channel":"official_api","status":"warning","priority":"P1","category":"stability","requirement_code":"connectivity_probe","title":"Connectivity probe evidence","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","action_url":"/geo/evidence","latest_run_id":12,"latest_status":"found_strong","plan_state":"scheduled","stability_status":"warning","probe_status":"","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"id":"external_evidence_execution:all:amap:latest_formal_collection","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"amap","provider":"amap","channel":"official_api","status":"warning","priority":"P1","category":"formal_collection","requirement_code":"latest_formal_collection","title":"Latest formal collection","message":"Latest formal collection needs review: found_strong.","next_action":"Run collect-due or repair source errors before relying on this source.","acceptance":"Latest GeoPlatformEvidence row is positive or has an auditable weak/not-found explanation.","action_url":"/geo/evidence","latest_run_id":12,"latest_status":"found_strong","plan_state":"scheduled","stability_status":"warning","probe_status":"","evidence":{"run_id":12,"row_id":78,"status":"found_strong","checked_at":"2026-06-08T11:34:00","age_hours":113,"error_message":null}},{"id":"external_evidence_execution:all:amap:scheduler_cadence","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"amap","provider":"amap","channel":"official_api","status":"warning","priority":"P1","category":"scheduler","requirement_code":"scheduler_cadence","title":"Scheduler cadence","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","action_url":"/geo/evidence","latest_run_id":12,"latest_status":"found_strong","plan_state":"scheduled","stability_status":"warning","probe_status":"","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}},{"id":"external_evidence_execution:all:amap:source_ledger_coverage","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"amap","provider":"amap","channel":"official_api","status":"warning","priority":"P1","category":"formal_collection","requirement_code":"source_ledger_coverage","title":"Source ledger coverage","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","action_url":"/geo/evidence","latest_run_id":12,"latest_status":"found_strong","plan_state":"scheduled","stability_status":"warning","probe_status":"","evidence":{"run_id":12,"ledger_present":false,"ledger_entry":{}}},{"id":"external_evidence_execution:all:amap:stability_signal","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"amap","provider":"amap","channel":"official_api","status":"warning","priority":"P1","category":"stability","requirement_code":"stability_signal","title":"Long-term stability signal","message":"Success rate 0% is below target 70%.","next_action":"Review latest signal, tune aliases or targets, then keep collecting until the success rate reaches target.","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","action_url":"/geo/evidence","latest_run_id":12,"latest_status":"found_strong","plan_state":"scheduled","stability_status":"warning","probe_status":"","evidence":{"signal_count":2,"success_rate":0.0,"consecutive_blocker_count":0,"latest_status":"found_strong"}},{"id":"external_evidence_execution:all:baidu_maps:connectivity_probe","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"baidu_maps","provider":"baidu_maps","channel":"official_api","status":"warning","priority":"P1","category":"stability","requirement_code":"connectivity_probe","title":"Connectivity probe evidence","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"id":"external_evidence_execution:all:baidu_maps:scheduler_cadence","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"baidu_maps","provider":"baidu_maps","channel":"official_api","status":"warning","priority":"P1","category":"scheduler","requirement_code":"scheduler_cadence","title":"Scheduler cadence","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}},{"id":"external_evidence_execution:all:baidu_maps:stability_signal","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"baidu_maps","provider":"baidu_maps","channel":"official_api","status":"warning","priority":"P1","category":"stability","requirement_code":"stability_signal","title":"Long-term stability signal","message":"No collection or connectivity probe signal exists in the lookback window.","next_action":"Run connectivity probe and collect-due on this source for at least two successful signals.","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{"signal_count":0,"success_rate":null,"consecutive_blocker_count":0,"latest_status":""}},{"id":"external_evidence_execution:all:dianping_monitor:connectivity_probe","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"dianping_monitor","provider":"dianping","channel":"external_sync","status":"warning","priority":"P1","category":"stability","requirement_code":"connectivity_probe","title":"Connectivity probe evidence","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"id":"external_evidence_execution:all:dianping_monitor:scheduler_cadence","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"dianping_monitor","provider":"dianping","channel":"external_sync","status":"warning","priority":"P1","category":"scheduler","requirement_code":"scheduler_cadence","title":"Scheduler cadence","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}},{"id":"external_evidence_execution:all:dianping_search:connectivity_probe","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"dianping_search","provider":"dianping","channel":"search_api","status":"warning","priority":"P1","category":"stability","requirement_code":"connectivity_probe","title":"Connectivity probe evidence","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"id":"external_evidence_execution:all:dianping_search:scheduler_cadence","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"dianping_search","provider":"dianping","channel":"search_api","status":"warning","priority":"P1","category":"scheduler","requirement_code":"scheduler_cadence","title":"Scheduler cadence","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}},{"id":"external_evidence_execution:all:dianping_search:source_ledger_coverage","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"dianping_search","provider":"dianping","channel":"search_api","status":"warning","priority":"P1","category":"formal_collection","requirement_code":"source_ledger_coverage","title":"Source ledger coverage","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"run_id":77,"ledger_present":false,"ledger_entry":{}}},{"id":"external_evidence_execution:all:douyin_search:connectivity_probe","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"douyin_search","provider":"douyin","channel":"search_api","status":"warning","priority":"P1","category":"stability","requirement_code":"connectivity_probe","title":"Connectivity probe evidence","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"id":"external_evidence_execution:all:douyin_search:scheduler_cadence","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"douyin_search","provider":"douyin","channel":"search_api","status":"warning","priority":"P1","category":"scheduler","requirement_code":"scheduler_cadence","title":"Scheduler cadence","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}},{"id":"external_evidence_execution:all:douyin_search:source_ledger_coverage","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"douyin_search","provider":"douyin","channel":"search_api","status":"warning","priority":"P1","category":"formal_collection","requirement_code":"source_ledger_coverage","title":"Source ledger coverage","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"run_id":77,"ledger_present":false,"ledger_entry":{}}},{"id":"external_evidence_execution:all:meituan_search:connectivity_probe","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"meituan_search","provider":"meituan","channel":"search_api","status":"warning","priority":"P1","category":"stability","requirement_code":"connectivity_probe","title":"Connectivity probe evidence","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"id":"external_evidence_execution:all:meituan_search:scheduler_cadence","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"meituan_search","provider":"meituan","channel":"search_api","status":"warning","priority":"P1","category":"scheduler","requirement_code":"scheduler_cadence","title":"Scheduler cadence","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}},{"id":"external_evidence_execution:all:meituan_search:source_ledger_coverage","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"meituan_search","provider":"meituan","channel":"search_api","status":"warning","priority":"P1","category":"formal_collection","requirement_code":"source_ledger_coverage","title":"Source ledger coverage","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"run_id":77,"ledger_present":false,"ledger_entry":{}}},{"id":"external_evidence_execution:all:tencent_maps:connectivity_probe","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"tencent_maps","provider":"tencent_maps","channel":"official_api","status":"warning","priority":"P1","category":"stability","requirement_code":"connectivity_probe","title":"Connectivity probe evidence","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"id":"external_evidence_execution:all:tencent_maps:scheduler_cadence","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"tencent_maps","provider":"tencent_maps","channel":"official_api","status":"warning","priority":"P1","category":"scheduler","requirement_code":"scheduler_cadence","title":"Scheduler cadence","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}},{"id":"external_evidence_execution:all:tencent_maps:stability_signal","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"tencent_maps","provider":"tencent_maps","channel":"official_api","status":"warning","priority":"P1","category":"stability","requirement_code":"stability_signal","title":"Long-term stability signal","message":"No collection or connectivity probe signal exists in the lookback window.","next_action":"Run connectivity probe and collect-due on this source for at least two successful signals.","acceptance":"Recent formal collection and probe signals meet configured stability thresholds.","action_url":"/geo/evidence","latest_run_id":null,"latest_status":"","plan_state":"due","stability_status":"warning","probe_status":"","evidence":{"signal_count":0,"success_rate":null,"consecutive_blocker_count":0,"latest_status":""}},{"id":"external_evidence_execution:all:xiaohongshu_search:connectivity_probe","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"xiaohongshu_search","provider":"xiaohongshu","channel":"search_api","status":"warning","priority":"P1","category":"stability","requirement_code":"connectivity_probe","title":"Connectivity probe evidence","message":"No latest connectivity probe row for this source.","next_action":"Run /geo/evidence/probe-store before the next formal retry if the source is weak or blocked.","acceptance":"A recent connectivity probe confirms source access without writing formal evidence rows.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"probe_run_id":null,"probe_status":"","status":"","completed_at":""}},{"id":"external_evidence_execution:all:xiaohongshu_search:scheduler_cadence","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"xiaohongshu_search","provider":"xiaohongshu","channel":"search_api","status":"warning","priority":"P1","category":"scheduler","requirement_code":"scheduler_cadence","title":"Scheduler cadence","message":"Scheduler is not fully proven alive in this process.","next_action":"Enable GEO_EXTERNAL_EVIDENCE_AUTORUN and confirm the cloud process has an alive scheduler thread.","acceptance":"Long-term evidence refreshes run on configured cadence without manual operation.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"autorun_enabled":false,"thread_alive":false,"last_status":"","interval_seconds":21600}},{"id":"external_evidence_execution:all:xiaohongshu_search:source_ledger_coverage","source":"external_evidence_source_execution_packet","store_id":0,"store_name":"","source_id":"xiaohongshu_search","provider":"xiaohongshu","channel":"search_api","status":"warning","priority":"P1","category":"formal_collection","requirement_code":"source_ledger_coverage","title":"Source ledger coverage","message":"Latest formal row has no source_ledger coverage entry.","next_action":"Rerun with the current collector so source_ledger records requested/covered/missing states.","acceptance":"Latest run raw_payload.source_ledger includes this source_id.","action_url":"/geo/evidence","latest_run_id":77,"latest_status":"found","plan_state":"blocked","stability_status":"blocker","probe_status":"","evidence":{"run_id":77,"ledger_present":false,"ledger_entry":{}}}],"source_contract":{"page_endpoint":"/geo/evidence","api_endpoint":"/geo/api/evidence/external-source-execution-packet?store_id={store_id}&source_id={source_id}","source_runbook_endpoint":"/geo/api/evidence/external-source-runbook?store_id={store_id}","collection_completion_packet_endpoint":"/geo/api/evidence/external-collection-completion-packet?run_id={run_id}","collect_due_endpoint":"/geo/evidence/collect-due","probe_endpoint":"/geo/evidence/probe-store","scheduler_function":"run_due_external_evidence_once","source_streams":["external_evidence_health","external_evidence_collection_plan","external_evidence_stability","external_evidence_connectivity_probe","geo_evidence_runs","geo_platform_evidence","geo_evidence_items","source_ledger"]},"source_summaries":{"health":{"ok_count":0,"warning_count":4,"blocker_count":5,"configured_count":4},"collection_plan":{"due_count":3,"cooldown_count":0,"blocked_count":5,"protected_count":0},"stability":{"status":"blocker","ok_count":0,"warning_count":4,"blocker_count":5,"avg_success_rate":66.7},"latest_probe":{"run_id":null,"status":"","ok_count":0,"warning_count":0,"blocker_count":0},"scheduler":{"autorun_enabled":false,"thread_alive":false,"last_status":"","next_due_at":""}}}}