# Production Build 运行可视化 当前主页面沿用 `production_executor_replan_loop_agent/web` 的模块画板、 运行实例、轮次和交互设计;后端不读取它的 MySQL `perl_*` 表,而是只读投影 本项目 `demo_output/` 中的业务文件。 ## 目录 ```text visualization/ ├── web/ │ ├── app.py # FastAPI 只读服务,接口形状兼容参考查看器 │ ├── store.py # Global Data 0.3 / Production 0.6 文件投影 │ └── index.html # 由参考项目最新前端开始适配 └── UPSTREAM.md ``` ## 启动 ```bash uv run uvicorn visualization.web.app:app \ --host 127.0.0.1 \ --port 8930 ``` 浏览器打开 `http://127.0.0.1:8930`。 默认扫描仓库根目录的 `demo_output/`。可通过环境变量覆盖: ```bash PRODUCTION_VISUALIZATION_RUN_ROOT=/absolute/run/root \ uv run uvicorn visualization.web.app:app --host 127.0.0.1 --port 8930 ``` ## 数据边界 - 只读取 Run 文件,不修改业务记录、Checkpoint 或 Registry。 - 不连接 MySQL,不调用模型,不调用媒体生成服务。 - 列表和详情同时支持 Global Data 0.3 与当前 Production 0.6 Run。 - Production 只读取 `production_plans/production_dag.vN.json` 中版本号最大的正式 Plan; 不投影旧协议或混合协议 Run。 - `/api/health` 会返回当前数据根目录和发现的 Run 数量;实际数据路径以 `/api/runs` 能否返回记录为准。