Files
getDomain/docs/schemas/ops_doctor_decision_contract.md
2026-04-18 23:52:51 +08:00

57 lines
1.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ops_doctor_decision_contract
## Purpose
冻结 `doctor-decision` 主决策 contract让页面、CLI、Codex 都消费同一份“当前先看哪一面、先执行什么动作、为什么”的正式结论。
## Producer
- backend service `app.services.ops_service.get_ops_doctor_decision`
- API `GET /api/v1/ops/doctor-decision`
## Primary Consumers
- `domain-web` Ops Center 顶部总检入口与主决策详情面板
- `domain-api/deploy/multi-region/drive_ops_center.sh doctor-decision`
- 海外 Codex 驾驶员 / 自动驾驶策略层
## Required Payload
- `status`
- `status_label`
- `headline`
- `detail`
- `decision`
- `summary`
- `recommended_commands`
- `contract_navigation`
## Decision Shape
- `decision.status`
- `decision.reason_code`
- `decision.headline`
- `decision.detail`
- `decision.preferred_surface`
- `decision.next_action_code`
- `decision.recommended_commands`
## Summary Shape
- `summary.required_failures`
- `summary.optional_unavailable`
- `summary.scene_log_reports_total`
- `summary.scene_log_reports_ok`
- `summary.scene_log_status_counts`
- `summary.scene_log_problem_node_codes`
- `summary.contract_surface_gaps`
- `summary.launchpad_recommended_target_node_code`
- `summary.launchpad_recommended_recovery_label`
- `summary.launchpad_recommended_recovery_summary`
## Notes
- 优先读取最新 `go-live bundle` 中的 `doctor_decision` 产物。
- 如果 bundle 尚未导出,后端必须回落到 live `stack-diagnosis + go-live-summary` 兜底,而不是直接返回空。
- `preferred_surface` 必须稳定可消费,不能把面板跳转逻辑继续留给前端猜测。