]> acesimba.cloud Git - StationBuilder.git/commit
fix: 修复资产配置布局、提示词格式与 Cube 生成卡死/空JSON 问题
authorwang.yu <wang.yu@advantech.com>
Sat, 15 Aug 2026 10:36:05 +0000 (18:36 +0800)
committerwang.yu <wang.yu@advantech.com>
Sat, 15 Aug 2026 10:36:05 +0000 (18:36 +0800)
commit51d70b327d843b167611c5cf1987a7fb642f92f5
tree1d6d3158d45d6f744deec24d8258f0d7d06a31a6
parentf65579148e79eb7d6fbf7dcd1a20e4592b1c6e0e
fix: 修复资产配置布局、提示词格式与 Cube 生成卡死/空JSON 问题

本次提交修复三处问题,均已用真实接口验证:

1. 资产配置页输入框被压窄(布局变形)
   - .data-table.editable 改为 table-layout:fixed 并明确列宽
   - 设备类型/命名规则输入框稳定撑满单元格,删除按钮补样式

2. 生成提示词:格式不符预期 + 未保存 Cube 点不开
   - 站点级与页面级提示词改为中文指令格式(学习领域特点、
     生成可导入 Cube 的 JSON、含合理模拟数据),与用户预期一致
   - 新增 GET /api/sites/:id/cubes/prompt?name=&content= 端点,
     未保存(无 id)的 Cube 也能查看提示词,修复点击无反应

3. Cube 生成卡死 / 生成出空 JSON([])—— 两个真正根因
   - 根因A:generate-all 只读数据库 cubes 表,未保存的草稿 Cube
     不会生成,包里只剩 menu-config.json(即用户看到的 [])。
     修复:generate-all 读取请求体 cubes 并先 upsert 入库再生成;
     前端 start() 一并提交 site.cubes,无需先点保存。
   - 根因B:codebuddy 默认开启高强度思考,单页生成 >5 分钟仍不结束,
     Cube 永远 pending。修复:runCodebuddy 增加 --effort minimal
     (单页约 1 分钟产出合法 JSON)+ 300s 超时保护(超时即终止并
     报错,避免 UI 无限转圈)。

验证:未保存 Cube『设备监控』(无 id) 自动建库并生成成功;
已保存 Cube『运行总览』生成 39KB 合法仪表盘 JSON,状态 generated。
注:生成质量(布局/数据合理性)仍待人工复核,但已能端到端产出
有效 Cube JSON,解决了此前 commit 中记录的『AI 创建功能还没有成功』。
app/globals.css
app/page.tsx
db-sidecar.mjs