Files
iAOP/web/studio
bot_dev1 7a2e45e7c4 feat: 全站 Ant Design Pro 风格重构 + 登录守卫与角色门户(issue #131/#134)
- 新增 web/shared:pro.css(AntD 5 设计系统,旧 CSS 变量统一映射 AntD 色板)、
  session.js(后端优先+本地账号降级双轨会话,IAOP_AUTH 兼容层)、
  pro-header.js(全站统一 Pro 导航条:logo/页题/用户角色 Tag/退出)
- 门户 web/index.html:未登录跳登录页(next 回跳),登录后按角色过滤
  可见模块(readonly→驾驶舱/助手/移动端;engineer→+配置台;admin→全部)
- 登录页 auth/login.html 重写为 Ant Design Pro 风格,本地降级模式自动
  播种演示账号(admin/engineer/viewer),保留 OIDC SSO 双轨入口
- user_store.js 新增 verify() + seedDefaults() 默认账号播种
- 六模块页统一接入 pro.css + 统一导航条 + 登录守卫(PRD 8.2)
- 驾驶舱主题 dark→light(Ant Design 5 色板):renderer.py THEME_TOKENS、
  ti-cl4/resin 模板 theme、告警三级配色对齐 AntD(P0 #ff4d4f/P1 #faad14/
  P2 #1677ff),渲染计划已重编(build_plans.py)
- 验证:core/cockpit 86 单测通过;JS 语法检查通过;静态冒烟全 200
2026-08-05 14:17:37 +08:00
..

web/studio — iAOP 模板配置台 UI

issue #132 / PRD 5.7「⑤.7 模板配置台」。纯静态单页应用(无构建链), 覆盖 PRD 5.7 关键页面线框:导入页 / 超参配置页 / 驾驶舱编排页 / 版本页, 三级 RBAC(Viewer / Editor / Publisher)。

使用

cd web/studio && python -m http.server 8081
# 浏览器打开 http://localhost:8081 (Chrome / Edge 最新两版)

页面与后端语义对齐

配置台后端内核 core/template-console/ 是纯标准库引擎(暂无 HTTP 服务), 本 UI 在前端镜像其语义;配置与版本持久化在浏览器 localStorage(Demo 级)。

页面 能力 对齐内核模块
① 点位导入 CSV 上传/粘贴、校验进度条、错误列表(行号+原因)、下载错误模板 point_importer.py(表头列序/必填/数据类型/采样率/重复点号/OPC 节点/模板量纲收窄)
② 模型超参 左树 4 类模型(质量预测/异常检测/工艺优化/跨工序关联)、右表单(默认值/单位/范围)、实时 JSON 预览 config_store.py(ConfigKind.MODEL_PARAM)、core/model-framework 示例
③ 驾驶舱编排 组件库(5 种 widget)/ 12 列画布 / 数据源绑定面板,产出 iAOP-cockpit-layout-v1 JSON config_store.py(ConfigKind.LAYOUT)、core/cockpit/layout.py
④ 版本发布 版本列表(状态/时间/作者)、diff 视图、回滚(不删历史、事件可追溯)、导出模板资产包 release.py(快照固化 / semver 单调递增 / 回滚可追溯)

RBAC(对齐 core/template-console/rbac.py)

  • Viewer(readonly):只读预览,全部编辑/发布按钮禁用;
  • Editor(engineer):可配置(导入校验/超参/编排),不可发布与回滚;
  • Publisher(admin):可配置 + 发布 + 回滚。

顶栏角色切换即切换权限视图(Demo 级,未接认证——认证由 issue #134 覆盖)。

耦合边界

配置台唯一产出物是「模板资产包」JSON(版本页导出, pack_schema: iAOP-template-pack-v1,含版本快照:超参/布局/点位校验报告), 供内核灰度推送(对齐 push_channel.py 的 PushManifest 语义), 不直接改内核运行时。