{"ok": true, "live_execution_locked": true, "may_trigger_trade": false, "path": "E:\\market\\data\\agent_ops\\soft_warns_latest.json", "exists": true, "doc": {"schema": "tidedesk.platform_ops.soft_warns.v2", "generated_at": "2026-09-23T14:51:26.651523+00:00", "n_soft_warn": 11, "soft_warns": ["acceptance_ops_fresh", "dmn_fail_regression_ok", "page_agent_fresh", "soft_daemon_errors_ok", "soft_reasons_regression_ok", "soft_reg_dual_ok", "soft_thr_compress_fail_ok", "soft_thr_compress_ok", "soft_thrf_fail_ok", "soft_thrff_ok", "pa_gui_desired_gap"], "soft_warn_reasons": {"acceptance_ops_fresh": {"why": "agent_ops_stale_or_missing", "age_hours": 1465.5, "stale": true, "updated_at": "2026-07-24T13:21:31.556597+00:00", "last_prefix": "agent_strategy_candidate_pipeline"}, "page_agent_fresh": {"why": "age>2.0h", "latest_age_hours": 1444.25, "latest_age_hours_raw": 1444.25383, "age_warn_hours": 2.0, "thr_compress": false, "stale_soft": true, "latest_run_id": "20260725T183612_821", "worker": "W1"}, "soft_reasons_regression_ok": {"why": "soft_reasons_regression_stale_or_fail", "pass": false, "age_hours": 0.37, "stale_soft": true, "worker": "W2", "loop_running": false, "loop_desired": true}, "dmn_fail_regression_ok": {"why": "dmn_fail_regression_stale_or_fail", "pass": false, "age_hours": 0.89, "stale_soft": true, "worker": "W1", "diag_why": null, "path": "E:\\market\\sector_workspaces\\08_platform_ops\\artifacts\\dmn_fail_regression_latest_W1.json"}, "soft_reg_dual_ok": {"why": "soft_reg_dual_track_fail", "dual_soft_ok": false, "dual_dmn_ok": false, "dual_thrc_ok": false, "dual_thrff_ok": false, "thr_fail_probe": true, "thrf_fail_track_probe": true, "dual_last_ok": false, "loop_running": false, "loop_pid": 27200, "hint": "check soft_reg_loop last_run dual_* / PEER_SOFT_IGNORE", "api": "/api/soft-reg-loop", "worker": "W3"}, "soft_thr_compress_ok": {"why": "thr_compress_reg_or_probe_fail", "thr_compress_ok": false, "page_thr_compress": null, "probe_mode": "thr_compress", "page_latest_age_hours_raw": null, "thr_compress_probe": true, "state_schema": "tidedesk.platform_ops.soft_reg_loop.v5", "reg_pass": false, "reg_worker": "W2", "api_reg": "/api/soft-reasons-regression", "api_loop": "/api/soft-reg-loop", "hint": "re-run smoke_soft_reasons_regression thr_compress · ensure loop thr_compress_probe", "worker": "W1"}, "soft_thr_compress_fail_ok": {"why": "thr_compress_fail_regression_stale_or_fail", "pass": false, "stale_soft": true, "has_thrc_soft": null, "age_hours": 0.89, "path": "E:\\market\\sector_workspaces\\08_platform_ops\\artifacts\\soft_thr_compress_fail_regression_latest_W2.json", "hint": "re-run smoke_soft_thr_compress_fail_W2", "api": "/api/soft-thr-compress-fail-regression", "worker": "W2"}, "soft_thrf_fail_ok": {"why": "thrf_fail_regression_stale_or_fail", "pass": false, "stale_soft": true, "has_thrf_soft": null, "age_hours": 0.3722, "path": "E:\\market\\sector_workspaces\\08_platform_ops\\artifacts\\soft_thrf_fail_regression_latest.json", "hint": "re-run smoke_soft_thrf_fail_W1", "api": "/api/soft-thrf-fail-regression", "worker": "W1"}, "soft_thrff_ok": {"why": "thrff_composite_gate_fail", "dual_thrff_ok": false, "thrf_fail_track_probe": true, "quad_track": true, "fail_reg_pass": false, "fail_reg_stale": true, "daemon_thrf_ok": true, "daemon_thrf_run_count": 4, "daemon_thrf_cycle_bit": "thrfd~", "daemon_thrf_error_class": "sticky", "daemon_thrf_safe_delete_sticky": false, "hint": "ensure dual_thrff + thrf track + thrf fail reg + daemon thrf cycle · clear inject via write_false · re-run smoke_soft_thrf_fail_W1", "api": "/api/soft-thrf-fail-regression", "api_loop": "/api/soft-reg-loop", "worker": "W2"}, "soft_daemon_errors_ok": {"why": "daemon_task_error_sticky", "n_error_tasks": 6, "error_summary": "行情事实层刷新:执行超时 | TideDesk 产业情报:\"candidates_in\": 0, \"with_flow\": 0, \"with_quotes\": 0, \"with_paper\": 92, \"pass\":… | soft_reasons 回归 smoke:_agent_age_warn_hours\": 1e-06, \"probe_err\": \"<urlopen error [WinError 10061] 由于… | dmn_fail 回归 smoke:re_er", "error_tasks": [{"name": "行情事实层刷新", "error_short": "执行超时", "run_count": 0, "running": true, "enabled": true}, {"name": "TideDesk 产业情报", "error_short": "\"candidates_in\": 0, \"with_flow\": 0, \"with_quotes\": 0, \"with_paper\": 92, \"pass\":…", "run_count": 1, "running": false, "enabled": true}, {"name": "soft_reasons 回归 smoke", "error_short": "_agent_age_warn_hours\": 1e-06, \"probe_err\": \"<urlopen error [WinError 10061] 由于…", "run_count": 4, "running": false, "enabled": true}, {"name": "dmn_fail 回归 smoke", "error_short": "re_err\": \"<urlopen error [WinError 10061] 由于目标计算机积极拒绝，无法连接。>\", \"probe_err\": \"<u…", "run_count": 2, "running": false, "enabled": true}, {"name": "thr_compress_fail 回归 smoke", "error_short": "open error [WinError 10061] 由于目标计算机积极拒绝，无法连接。>\", \"probe_err\": \"<urlopen error […", "run_count": 2, "running": false, "enabled": true}], "daemon_pid": 13320, "hint": "fix quant_skills timeout/args · clear sticky error via successful run · see /api/platform-ops-health#daemon_task_errors", "api": "/api/platform-ops-health", "worker": "W3"}, "pa_gui_desired_gap": {"why": "gui_desired_but_not_running", "gui_desired": true, "gui_running": false}}, "hard_skip": ["acceptance_ops_fresh", "dmn_fail_regression_ok", "page_agent_fresh", "soft_daemon_errors_ok", "soft_reasons_regression_ok", "soft_reg_daemon_live", "soft_reg_dual_ok", "soft_thr_compress_fail_ok", "soft_thr_compress_ok", "soft_thrf_fail_ok", "soft_thrf_live_ok", "soft_thrff_ok", "standalone_pages_ok"], "n_fail": 3, "ok": false, "live_execution_locked": true, "may_trigger_trade": false, "source": "platform-ops-health", "soft_thresholds": {"latency_warn_ms": 500, "soft_stale_hours": 36.0, "page_agent_age_warn_hours": 2.0, "loaded": true, "path": "E:\\market\\data\\agent_ops\\soft_thresholds.json"}, "soft_thresholds_path": "E:\\market\\data\\agent_ops\\soft_thresholds.json", "soft_thresholds_loaded": true, "soft_reg_daemon_diag": {"ok": true, "why": null, "daemon_task_registered": true, "daemon_task_live": true, "daemon_source_gap": false, "daemon_pid": 13320, "daemon_n_tasks": 17, "n_tasks": 17, "daemon_task_name": "soft_reasons 回归 smoke", "daemon_started_at": "2026-09-23T22:50:59.803601", "daemon_status": "running", "daemon_status_age_hours": 0.0, "loop_running": false, "loop_desired": true, "loop_pid": 27200, "restart_api": "/api/soft-reg-loop", "hint": "restart empire_daemon.py to load TASKS incl soft_reasons smoke", "worker": "W2", "n_error_tasks": 6, "error_tasks": [{"name": "行情事实层刷新", "error_short": "执行超时", "run_count": 0, "running": true, "enabled": true}, {"name": "TideDesk 产业情报", "error_short": "\"candidates_in\": 0, \"with_flow\": 0, \"with_quotes\": 0, \"with_paper\": 92, \"pass\":…", "run_count": 1, "running": false, "enabled": true}, {"name": "soft_reasons 回归 smoke", "error_short": "_agent_age_warn_hours\": 1e-06, \"probe_err\": \"<urlopen error [WinError 10061] 由于…", "run_count": 4, "running": false, "enabled": true}, {"name": "dmn_fail 回归 smoke", "error_short": "re_err\": \"<urlopen error [WinError 10061] 由于目标计算机积极拒绝，无法连接。>\", \"probe_err\": \"<u…", "run_count": 2, "running": false, "enabled": true}, {"name": "thr_compress_fail 回归 smoke", "error_short": "open error [WinError 10061] 由于目标计算机积极拒绝，无法连接。>\", \"probe_err\": \"<urlopen error […", "run_count": 2, "running": false, "enabled": true}], "error_summary": "行情事实层刷新:执行超时 | TideDesk 产业情报:\"candidates_in\": 0, \"with_flow\": 0, \"with_quotes\": 0, \"with_paper\": 92, \"pass\":… | soft_reasons 回归 smoke:_agent_age_warn_hours\": 1e-06, \"probe_err\": \"<urlopen error [WinError 10061] 由于… | dmn_fail 回归 smoke:re_er", "daemon_errors_ok": false, "daemon_errors_schema": "tidedesk.platform_ops.daemon_task_errors.v2", "soft_daemon_errors_ok": false, "worker_errors": "W3"}}, "n_soft_warn": 11, "soft_warns": ["acceptance_ops_fresh", "dmn_fail_regression_ok", "page_agent_fresh", "soft_daemon_errors_ok", "soft_reasons_regression_ok", "soft_reg_dual_ok", "soft_thr_compress_fail_ok", "soft_thr_compress_ok", "soft_thrf_fail_ok", "soft_thrff_ok", "pa_gui_desired_gap"], "soft_warn_reasons": {"acceptance_ops_fresh": {"why": "agent_ops_stale_or_missing", "age_hours": 1465.5, "stale": true, "updated_at": "2026-07-24T13:21:31.556597+00:00", "last_prefix": "agent_strategy_candidate_pipeline"}, "page_agent_fresh": {"why": "age>2.0h", "latest_age_hours": 1444.25, "latest_age_hours_raw": 1444.25383, "age_warn_hours": 2.0, "thr_compress": false, "stale_soft": true, "latest_run_id": "20260725T183612_821", "worker": "W1"}, "soft_reasons_regression_ok": {"why": "soft_reasons_regression_stale_or_fail", "pass": false, "age_hours": 0.37, "stale_soft": true, "worker": "W2", "loop_running": false, "loop_desired": true}, "dmn_fail_regression_ok": {"why": "dmn_fail_regression_stale_or_fail", "pass": false, "age_hours": 0.89, "stale_soft": true, "worker": "W1", "diag_why": null, "path": "E:\\market\\sector_workspaces\\08_platform_ops\\artifacts\\dmn_fail_regression_latest_W1.json"}, "soft_reg_dual_ok": {"why": "soft_reg_dual_track_fail", "dual_soft_ok": false, "dual_dmn_ok": false, "dual_thrc_ok": false, "dual_thrff_ok": false, "thr_fail_probe": true, "thrf_fail_track_probe": true, "dual_last_ok": false, "loop_running": false, "loop_pid": 27200, "hint": "check soft_reg_loop last_run dual_* / PEER_SOFT_IGNORE", "api": "/api/soft-reg-loop", "worker": "W3"}, "soft_thr_compress_ok": {"why": "thr_compress_reg_or_probe_fail", "thr_compress_ok": false, "page_thr_compress": null, "probe_mode": "thr_compress", "page_latest_age_hours_raw": null, "thr_compress_probe": true, "state_schema": "tidedesk.platform_ops.soft_reg_loop.v5", "reg_pass": false, "reg_worker": "W2", "api_reg": "/api/soft-reasons-regression", "api_loop": "/api/soft-reg-loop", "hint": "re-run smoke_soft_reasons_regression thr_compress · ensure loop thr_compress_probe", "worker": "W1"}, "soft_thr_compress_fail_ok": {"why": "thr_compress_fail_regression_stale_or_fail", "pass": false, "stale_soft": true, "has_thrc_soft": null, "age_hours": 0.89, "path": "E:\\market\\sector_workspaces\\08_platform_ops\\artifacts\\soft_thr_compress_fail_regression_latest_W2.json", "hint": "re-run smoke_soft_thr_compress_fail_W2", "api": "/api/soft-thr-compress-fail-regression", "worker": "W2"}, "soft_thrf_fail_ok": {"why": "thrf_fail_regression_stale_or_fail", "pass": false, "stale_soft": true, "has_thrf_soft": null, "age_hours": 0.3722, "path": "E:\\market\\sector_workspaces\\08_platform_ops\\artifacts\\soft_thrf_fail_regression_latest.json", "hint": "re-run smoke_soft_thrf_fail_W1", "api": "/api/soft-thrf-fail-regression", "worker": "W1"}, "soft_thrff_ok": {"why": "thrff_composite_gate_fail", "dual_thrff_ok": false, "thrf_fail_track_probe": true, "quad_track": true, "fail_reg_pass": false, "fail_reg_stale": true, "daemon_thrf_ok": true, "daemon_thrf_run_count": 4, "daemon_thrf_cycle_bit": "thrfd~", "daemon_thrf_error_class": "sticky", "daemon_thrf_safe_delete_sticky": false, "hint": "ensure dual_thrff + thrf track + thrf fail reg + daemon thrf cycle · clear inject via write_false · re-run smoke_soft_thrf_fail_W1", "api": "/api/soft-thrf-fail-regression", "api_loop": "/api/soft-reg-loop", "worker": "W2"}, "soft_daemon_errors_ok": {"why": "daemon_task_error_sticky", "n_error_tasks": 6, "error_summary": "行情事实层刷新:执行超时 | TideDesk 产业情报:\"candidates_in\": 0, \"with_flow\": 0, \"with_quotes\": 0, \"with_paper\": 92, \"pass\":… | soft_reasons 回归 smoke:_agent_age_warn_hours\": 1e-06, \"probe_err\": \"<urlopen error [WinError 10061] 由于… | dmn_fail 回归 smoke:re_er", "error_tasks": [{"name": "行情事实层刷新", "error_short": "执行超时", "run_count": 0, "running": true, "enabled": true}, {"name": "TideDesk 产业情报", "error_short": "\"candidates_in\": 0, \"with_flow\": 0, \"with_quotes\": 0, \"with_paper\": 92, \"pass\":…", "run_count": 1, "running": false, "enabled": true}, {"name": "soft_reasons 回归 smoke", "error_short": "_agent_age_warn_hours\": 1e-06, \"probe_err\": \"<urlopen error [WinError 10061] 由于…", "run_count": 4, "running": false, "enabled": true}, {"name": "dmn_fail 回归 smoke", "error_short": "re_err\": \"<urlopen error [WinError 10061] 由于目标计算机积极拒绝，无法连接。>\", \"probe_err\": \"<u…", "run_count": 2, "running": false, "enabled": true}, {"name": "thr_compress_fail 回归 smoke", "error_short": "open error [WinError 10061] 由于目标计算机积极拒绝，无法连接。>\", \"probe_err\": \"<urlopen error […", "run_count": 2, "running": false, "enabled": true}], "daemon_pid": 13320, "hint": "fix quant_skills timeout/args · clear sticky error via successful run · see /api/platform-ops-health#daemon_task_errors", "api": "/api/platform-ops-health", "worker": "W3"}, "pa_gui_desired_gap": {"why": "gui_desired_but_not_running", "gui_desired": true, "gui_running": false}}, "soft_thresholds": {"schema": "tidedesk.platform_ops.soft_thresholds.v1", "latency_warn_ms": 500, "soft_stale_hours": 36.0, "page_agent_age_warn_hours": 2.0, "path": "E:\\market\\data\\agent_ops\\soft_thresholds.json", "loaded": true}, "soft_thresholds_path": "E:\\market\\data\\agent_ops\\soft_thresholds.json"}