Skip to content

配置与 WebUI

字数
430 字
阅读时间
2 分钟

插件侧配置接入合同。合并顺序与读取 API 见 配置存储

事实

启动层主配置config/pallas.toml
遗留兼容.env / .env.{ENVIRONMENT}(只读合并,不新增主能力键)
运行态落盘data/pallas_config/webui.json(最高优先级)
插件页接法pallas.api.config.install_hot_reload_config
横切段通用配置段(权限、gateway、scrub、ingress…)

插件页(推荐)

python
from pydantic import BaseModel, Field

from pallas.api.config import install_hot_reload_config


class Config(BaseModel, extra="ignore"):
    enable: bool = Field(default=True, description="是否启用。")


plugin_webui = install_hot_reload_config(Config, config_module=__name__)
get_config = plugin_webui.get
python
cfg = get_config()
if not cfg.enable:
    return

UI 字段元数据见 DynamicConfigPanel

通用配置段

配置为平台横切项(多插件共享、非单插件私有页)时接到通用段,禁止自造存储点。

热载边界

变更类型期望
开关 / 文案 / 频率 / 策略枚举应热载
Python 逻辑 / 复杂启动 / 深层结构进程重启;勿伪装成热载

仓边界

改动仓库
表单 UI、路由、样式Pallas-Bot-WebUI
配置模型、保存、热载、API主仓

新增配置项决策

问题选项
启动层还是运行态?pallas.toml vs 插件页 / 通用段
是否 WebUI 可改?是 → 热载模型;否 → 启动层
单插件还是横切?插件页 vs 通用段
分片下是否全 worker 一致?MUST 走统一读取入口

禁止

MUST NOT
为新主能力新增根目录 .env
假设仅改 pallas.toml 即运行态终值
模块 import 时缓存 get_config()
插件私有并行配置文件

相关