> 提醒：WebUI 的“配置 -> 系统配置”已迁移至 WebUI 侧边栏下方的“设置”。
>
> Note: WebUI “Config -> System Config” has moved to “Settings” at the bottom of the WebUI sidebar.

- [更新日志(简体中文)](#chinese)
- [Changelog(English)](#english)

<a id="chinese"></a>

## What's Changed

### 重点更新

- 重组 WebUI 系统配置页面，将系统配置入口迁移到侧边栏下方的设置区域，并优化相关设置项、自动保存和重启提示体验。([#8777](https://github.com/AstrBotDevs/AstrBot/pull/8777))
- 新增平台级 `create_event` 入口，StarTools 创建事件时改为委托给平台适配器，避免工具层绑定具体平台实现，并为各平台补齐专属事件构造逻辑。([#8813](https://github.com/AstrBotDevs/AstrBot/pull/8813))

### 修复

- 将项目更新流程改为原子化操作，减少更新中断或重启时产生不完整状态的风险。([#8805](https://github.com/AstrBotDevs/AstrBot/pull/8805))
- 修复静态资源缺失时仍显示 WebUI ready banner 的问题。([#8804](https://github.com/AstrBotDevs/AstrBot/pull/8804))
- 使用原子写入方式保存配置文件，降低写入中断导致配置损坏的概率。([#8793](https://github.com/AstrBotDevs/AstrBot/pull/8793))
- 修复本地 Python 工具没有在当前 session workspace 中运行的问题。([#8792](https://github.com/AstrBotDevs/AstrBot/pull/8792))
- 修复 run-based tools 的保护逻辑，避免受保护工具在注册流程中被错误丢失。([#8790](https://github.com/AstrBotDevs/AstrBot/pull/8790))
- 稳定 Dashboard 路由相关测试，兼容最新 FastAPI 行为。([commit](https://github.com/AstrBotDevs/AstrBot/commit/a2b6aad84))

### 优化与工程

- 降低核心模块中的 Pyright 类型错误数量，补充类型收窄、声明和边界检查。([#8197](https://github.com/AstrBotDevs/AstrBot/pull/8197))
- 应用 Ruff 格式化整理。([commit](https://github.com/AstrBotDevs/AstrBot/commit/98acd9f0d))
- 升级 GitHub Actions 中的 `pnpm/action-setup`。([#8808](https://github.com/AstrBotDevs/AstrBot/pull/8808))

<a id="english"></a>

## What's Changed (EN)

### Highlights

- Reorganized the WebUI system configuration experience, moving the system configuration entry to the Settings area at the bottom of the sidebar and improving related settings, autosave, and restart notices. ([#8777](https://github.com/AstrBotDevs/AstrBot/pull/8777))
- Added a platform-level `create_event` hook so StarTools delegates event creation to platform adapters instead of binding to concrete platform implementations, with platform-specific event construction added across adapters. ([#8813](https://github.com/AstrBotDevs/AstrBot/pull/8813))

### Bug Fixes

- Made the project update flow atomic to reduce incomplete update states during interruptions or restarts. ([#8805](https://github.com/AstrBotDevs/AstrBot/pull/8805))
- Avoided showing the WebUI ready banner when static assets are missing. ([#8804](https://github.com/AstrBotDevs/AstrBot/pull/8804))
- Wrote configuration files atomically to reduce the chance of corruption during interrupted writes. ([#8793](https://github.com/AstrBotDevs/AstrBot/pull/8793))
- Ensured local Python tools run inside the current session workspace. ([#8792](https://github.com/AstrBotDevs/AstrBot/pull/8792))
- Preserved guarded run-based tools during registration. ([#8790](https://github.com/AstrBotDevs/AstrBot/pull/8790))
- Stabilized Dashboard route tests for the latest FastAPI behavior. ([commit](https://github.com/AstrBotDevs/AstrBot/commit/a2b6aad84))

### Improvements and Maintenance

- Reduced Pyright type errors across core modules with stricter narrowing, declarations, and boundary checks. ([#8197](https://github.com/AstrBotDevs/AstrBot/pull/8197))
- Applied Ruff formatting cleanup. ([commit](https://github.com/AstrBotDevs/AstrBot/commit/98acd9f0d))
- Updated `pnpm/action-setup` in GitHub Actions. ([#8808](https://github.com/AstrBotDevs/AstrBot/pull/8808))
