v1.2.8 - WebUI 入口自诊断与部署资源缺失降级
v1.2.8 - WebUI 入口自诊断与部署资源缺失降级
本版继续加固 v1.2.7 的 WebUI 发布路径,重点修复 AstrBot 侧插件页面自动跳转共享路由时可能落入默认 404、独立 Sylanne WebUI 部署包缺少 legacy dashboard/capability-tree 资源时直接显示 index.html not found、以及 Observatory 子接口缺失时缺少有效诊断线索的问题。
主要改动
- 移除 AstrBot 插件页入口的自动跳转,改为先探测共享
/health与/api/state,避免直接进入 AstrBot 默认 404。 - 插件页共享 WebAPI 不可达时,明确提示使用
/anima_dashboard_url获取独立 WebUI 地址。 - 独立 aiohttp 与 stdlib fallback WebUI 在 dashboard/capability-tree 资源缺失时,改为渲染轻量只读 fallback 页面,不再硬 404。
- 新增
/api/webui_manifest,可诊断当前 WebUI 承载层、模块文件、插件根目录、legacy 页面资源是否存在、路由注册状态等。 - Portal 的 Observatory 子接口加载失败时,新增 manifest 诊断链接,便于定位 stale listener、部署包资源缺失或路由缺失问题。
兼容性说明
- 未改动核心叙事、记忆、反刍、突变、状态持久化逻辑。
- 共享 WebUI、独立 aiohttp WebUI、stdlib fallback WebUI 均保持向后兼容。
验证
py -m py_compile anima/sylanne_alpha/webui_server.py anima/sylanne_alpha/webui_routes.py plugin_api.pypy -m pytest -q- 全量测试通过:
408 passed, 50 warnings