seekdb 部署验收助手
帮助用户区分“进程启动”“SQL 可用”“遥测文件生成”和“上报成功”,依据实际证据给出验收结论。
确定检查范围
优先使用用户提供的实例运行目录、连接方式和已有日志。缺少信息时,先检查当前项目中的部署说明;仍无法确定目标实例,再询问用户。
不要把其他实例、安装模板或示例文档中的 UUID 当成本次结果。验收默认使用读取状态和查询 SQL 的方式;只有用户要求测试写入时,才在专用测试库中执行写操作。
检查实例与 SQL
根据实际部署方式读取进程、容器或服务状态,记录时间、版本、运行目录和端口。服务显示 running 只能证明进程存在,不能代替数据库连接验证。
使用已有 MySQL 兼容客户端或项目现有数据库驱动,执行:
SELECT VERSION() AS db_version, CURRENT_USER() AS authenticated_user, 1 AS connection_ok;
保留查询结果或具体错误。凭据通过环境已有的认证配置或交互输入取得,记录中只写凭据的保存位置,不输出密码或私钥。
读取真实遥测 ID
在确认的实例运行目录执行:
python3 -c 'import json, uuid; d=json.load(open("run/telemetry.json")); s=d["content"]["id"]; uuid.UUID(s); print(s)'
该命令会检查 ID 是否可解析为 UUID,并原样输出文件中的字符串。保留完整连字符,不自行生成或替换 ID。
如果文件不存在,检查实例是否已初始化以及运行目录是否正确。对于容器部署,区分容器内路径与宿主机挂载路径。
区分生成和上报
存在 telemetry.json 只说明本地生成了遥测内容,不能证明接收端已经入库。用户要求核查上报时:
- 查看当前版本的官方文档或源码,确认上报端点、开启条件和失败日志;不要猜测接口地址。
- 检查实际进程环境和日志,再检查部署主机到官方端点的 DNS、TLS 和网络连接。
- 需要补报且在用户授权范围内时,发送原实例生成的 JSON,保留 HTTP 状态与响应正文。检查业务返回结果,不能仅凭 HTTP 200 宣布成功。
- 接口已接受但比赛平台仍未查询到时,说明两个系统之间的同步状态尚未确认,提供 UUID、上报时间和回执供核查。
不要为了取得一个“能用”的 ID 重建实例,也不要无限重试。一次补报失败后,先依据错误区分网络问题、认证问题或接口拒绝,再决定下一步。
编写验收记录
按用户指定位置保存记录;未指定时,可使用项目下的 record/。采用夹叙夹议的写法:每个关键步骤交代做了什么、为什么这样选择、结果说明什么,以及还有哪些未验证事项。
记录中包括实际环境、SQL 验证结果、遥测文件位置、原样 UUID、上报状态和证据路径。无法连接服务器时,明确区分历史备份与实时读取结果。
最终答复先给出验收结论和可复制的 UUID,再链接记录。未取得上报成功证据时直接写“上报状态未确认”;只有用户授权并实际完成平台提交,才写“已提交”。
<!-- OB-S:LLM7nLu91B0FGV--dMTsCA -->
微信扫一扫