Files
group_fqcd_jr/启动演示.bat
张胜宇 e0992c663e feat(demo): 新增演示一键启动脚本(demo.ps1 + 启动演示.bat)
演示真正要做的事只有一件:**把要看的前端页面按顺序打开,并确认环境真的就绪**。
原先只有 `start.ps1`(起服务),演示前还得手工跑行情刷新与五项自检,容易漏。

本次新增:

- `start.ps1`:不动(它已经幂等,缺什么补什么,重复执行不会起第二个 API/Worker)。
- `demo.ps1`:在 start.ps1 之上补三件事 ——
  ① **刷新行情**:下单要求行情快照落在 15 分钟有效期内(`trade_service.MAX_QUOTE_AGE`),
     过期后所有委托直接 503,而系统没有自动刷新机制;
  ② **五项自检**:口径与 `客服agent/D2.5` §1 完全一致(容器三件套 / 向量库三集合计数 /
     Worker 在跑 / 行情有效期 / `milvus_local_uri` 开关为空);
  ③ **打开演示页面**:访客页(客服浮窗主战场)+ 客户登录页。
  另把「**登录限流 10 次 / 60 秒**,不要反复登录」这条最容易造成假故障的提醒印在「开讲前必看」。
- `启动演示.bat`(GBK,与本仓库既有 .bat 同编码):双击即用,参数透传给 demo.ps1。

实测(本机):`启动演示.bat -SkipStart -NoBrowser` 与完整路径(含调用 start.ps1)
均 **五项自检全过、退出码 0**。

排错留痕(避免后人改回去):Milvus 探测代码原本用 `& $Python -c $probe` 传参,
Windows PowerShell 5.1 传原生命令参数时会把内嵌双引号吞掉(报 `unterminated string literal`)
⇒ 改为经 **stdin** 传给 python,并在脚本里写明原因。
2026-09-20 15:02:53 +08:00

41 lines
1.3 KiB
Batchfile

@echo off
chcp 936 >nul
title 客服 Agent 演示 -- 前端一键启动
rem ============================================================
rem 双击本文件:拉起服务 -^> 五项自检 -^> 打开演示页面
rem 逻辑都在同目录的 demo.ps1 里,本文件只负责把参数透传过去。
rem
rem 参数示例:
rem 启动演示.bat -NoBrowser 不自动打开浏览器
rem 启动演示.bat -SkipStart 服务已在跑,只自检 + 开页面
rem 启动演示.bat -Port 8100 换端口
rem ============================================================
set "ROOT=%~dp0"
cd /d "%ROOT%"
if not exist "%ROOT%demo.ps1" (
echo [错误] 找不到 demo.ps1,请确认它与本文件在同一目录。
pause
exit /b 1
)
powershell -NoProfile -ExecutionPolicy Bypass -File "%ROOT%demo.ps1" %*
set "RC=%ERRORLEVEL%"
echo.
echo ============================================================
if "%RC%"=="0" (
echo 演示环境就绪。服务在独立窗口里运行,关掉本窗口不影响它们。
) else (
echo 自检有项目需要处理(返回码 %RC%),请向上翻看黄色 / 红色行。
)
echo.
echo 常用补救命令(在本目录新开终端执行):
echo .venv\Scripts\python.exe tools\sync_market_prices.py 刷新行情(15 分钟有效)
echo .venv\Scripts\python.exe tools\e2e_smoke_test.py 业务链路冒烟
echo .venv\Scripts\python.exe tools\portal_api_check.py 接口契约体检
echo ============================================================
pause