术语表
Application Merge Config
应用维护的 Mihomo 设置层,类型为 IClashTemp。它不是用户订阅本体,会在增强流水线中合入当前 Profile。
Draft / Committed
Draft 是候选配置;Committed 是已成功生效的正式快照。latest_arc() 优先候选,data_arc() 只取正式值。
Enhance
把基础 Profile、序列增强、应用设置、TUN/DNS、Merge 和 Script 编译成最终 runtime Mapping 的固定顺序管线。
Profile
一条配置目录项及其内容文件、来源 URL、增强引用、更新时间和节点选择记录。remote/local 是基础配置,merge/script/rules/proxies/groups 是增强素材。
Runtime Config
Enhance 的完整产物,写入供 Mihomo 读取的运行时 YAML。可重新生成,不是唯一用户源数据。
Service
独立特权服务,代表当前用户/会话托管 Mihomo,并执行 TUN、系统代理等需要权限或跨应用生命周期的动作。
Sidecar
由 Tauri 应用直接拉起和监督的 Mihomo 子进程。无需已安装 Service,但能力受当前应用权限限制。
RunningMode
核心当前托管方式:Service、Sidecar 或 NotRunning。不包含服务健康与用户决策。
RunState
组合 RunningMode、ServiceHealth、PendingAction、Sidecar allowance、管理员权限和 operation 状态的统一快照。
OwnerSessionProof
Service 会话所有权证明,包含 generation/token。旧应用会话的异步任务不能控制新 owner 的核心。
Generation
单调变化的代际标识。相比 bool,它能识别状态经历 A→B→A 后已经不是同一实例,用于 readiness、owner、guard 和 Profile 激活。
PAC
Proxy Auto-Configuration。操作系统从应用回环服务器获取 JS 函数,按 URL 决定 DIRECT 或代理。
Proxy Guard
周期检查/重设系统代理的后台任务。通过 generation、operation lock 和 owner proof 防止旧任务晚到覆盖最终设置。
Desired / Effective Port
Desired 是配置希望核心使用的端口;Effective 是当前核心实际报告的端口。生成配置用前者,连接运行中核心优先后者。
ProxyView
后端把 Mihomo core/provider 数据规范化成的版本化 UI 模型,处理稳定顺序、同名节点、group 引用和不可解析原因。
Structural Sharing
新快照中未变化的对象继续复用旧引用,减少 React 列表行重渲染和内存分配。
Lightweight Mode
销毁主 WebView 以降低后台资源占用,但保留 Mihomo、tray 和后台任务的桌面运行模式。
Saga / Compensation
跨内存、文件、外部进程和操作系统的修改无法由一个数据库事务覆盖。项目用 Draft rollback、文件快照和代理/核心恢复动作补偿失败。