1.1.1
- 修复绕过名单改动不生效：此前面板修改绕过名单并保存后，设置保存成功、界面也显示新名单，但内核里的绕过规则仍是旧的，需要重启插件才会生效。原因是绕过名单既不属于「引擎参数」（不触发重启），也不属于「规则集」（只做热重载），等于没有路径把它下发下去。现已修复，保存即生效，并在日志中记录实际下发的条数。
- 绕过规则的安装改为由主循环统一下发：这样「引擎启动后首次安装」与「用户修改名单」走同一条路径，不会出现两者行为不一致的情况。

1.1.0
- 引擎改为内嵌：安装包内只有一个可执行文件，不再附带独立的引擎二进制，也不再以子进程方式运行。功能与原版本一致，面板、规则、绕过名单、热重载都不变。
- 由此从根上消除了「大量日志导致设备断网」的成因：旧结构里引擎日志经过进程管道，读取侧一旦卡住，引擎就会阻塞在写日志、进而停止处理内核队列，整机流量被扣住。内嵌后日志是进程内调用，这条路径不存在了（日志仍然会丢弃多余条目以保证转发不受影响）。
- 面板新增显示内嵌引擎的上游版本，便于确认实际运行的引擎。
- 更新插件图标。

1.0.4
- 修复绕过名单不生效：iKuai 的 iptables 在每条规则前会打印 "[fastid: N]" 前缀，此前导致插件识别不到自己下发的规则，绕过名单因此静默失效。现已正确识别。
- 修复残留规则清理失效：同一原因，此前关闭拦截或异常退出后可能无法清理内核挂载。现已修复，并同时修正了停止脚本中的同类问题。
- 修复状态显示错误：此前每次保存设置都会把运行中的引擎显示为「已停止」，面板与实际状态不符（实际仍在拦截）。现状态准确。

1.0.3
- 修复日志时区：守护进程此前按 UTC 记录时间，与设备上其他日志相差 8 小时。原因是 iKuai 的时区写在 /etc/TZ（POSIX 格式，如 UTC-0800），而 Go 只认 IANA 时区名，遇到这种格式会静默退回 UTC。现由程序自行解析该格式，日志时间与设备一致。

1.0.2
- 修复版本号显示：面板与状态接口此前固定显示 1.0.0，现与插件版本一致。
- 修复日志重复：守护进程日志此前每条会写入两遍，现已去重，日志量减半。

1.0.1
- 重要修复：解决「开启拦截后路由器可能失去网络响应」的问题。此前的日志管道在大量日志时可能阻塞检测引擎，进而使内核队列停止处理报文，导致设备断网。现改为：日志读取永不阻塞、永不中断（超长行与读取错误都不再终止抽取），落盘由独立写入线程承担，队列满时宁可丢弃日志也不阻塞转发；面板会显示被丢弃的条数。
- 新增自我保护：开启本机模式拦截时，后台会周期性探测本机出网，连续失败则自动卸载内核挂载并关闭拦截，避免设备被自己的规则困住。
- 新增安全模式：检测到上次未正常退出时，开机不再自动恢复拦截；本机模式不跨重启保留。
- 新增引擎异常退出自动重启（带次数上限，避免无休止重启掩盖问题）。
- 关闭拦截或异常退出后，残留的内核规则会被自动清理。

1.0.0
- 首个版本：内嵌 OpenGFW（Netfilter NFQUEUE 深度报文检测引擎），支持网关模式（处理转发流量）与本机模式（只处理路由器自身流量）。
- 支持按协议特征过滤：DNS、TLS SNI、HTTP、QUIC、SSH、SOCKS、WireGuard、OpenVPN，以及全加密流量（Shadowsocks 类）与 Trojan 特征检测。
- 规则使用表达式编写（expr），支持放行 / 拦截 / 丢包 / 改写；保存后热重载，不中断已有连接。
- 绕过名单：指定 IP 或 CIDR 不进入检测队列，直接放行。
- 默认不启用拦截（只观察），安装即用不会切断任何流量；关闭拦截时自动卸下内核挂载。
- 安全提示：开启拦截前请先使用「只记录」规则观察日志，确认无误再改为拦截。
