Skip to content

Releases: jiayuxuan123/RescueX

RescueX v3.5.11

Choose a tag to compare

@jiayuxuan123 jiayuxuan123 released this 24 Aug 08:07

RescueX v3.5.11

手机端导航与 OTA 识别修复

  • 修复手机端底部导航点击后不切页的问题:缺失的分组隐藏样式已补回,五个视图各自独立。
  • 修复 OTA 模式长期显示“更新中”:常驻厂商属性、常驻 update_engine 与过期状态文件不再被当作更新信号。
  • OTA 与补丁检测统一要求“状态有效 + 时间新近”,来源名称改为中性的“厂商更新信号”。
  • 移除与救砖无关的 ColorOS 功能扩展,只保留影响开机超时的厂商 OTA 识别。
  • 安装界面语言统一为中文优先,音量键选择提示固定中英双语,避免误按。
  • 莫奈取色改为真实实现:用 root 读取系统已生成的 Material You 色阶,而不是单一种子色近似;降级路径会在界面标注为近似配色。
  • WebUI 安装偏好可跨升级沿用;新增 MIUI X / Material Design 3 外观选择。
  • 手机端触控与布局修正:刷新入口在所有视图可用,触控尺寸达标,320–768px 无横向溢出。

OTA 检测仍只影响开机超时选择,不改失败计数、看门狗、模块禁用/恢复和重启行为。

Candidate Asset

  • Tag: v3.5.11
  • Asset: RescueX-v3.5.11.zip
  • SHA-256: 2d90217df8182cd2213a5f370a02197117c53991aafd3957d1f833747f311e1d
  • versionCode: 350204

Verification Gate

This candidate passed offline OTA (16 cases), persistence, WebUI-choice, release-metadata, Shell syntax, and JavaScript syntax checks, plus an offline WebUI layout review. Publish only after on-device validation of the WebUI hosts and a real vendor OTA cycle.

RescueX v3.5.10-r3

RescueX v3.5.10-r3 Pre-release
Pre-release

Choose a tag to compare

@jiayuxuan123 jiayuxuan123 released this 22 Aug 05:46

RescueX v3.5.10-r3

这是面向真实设备验证的预发布版本,重点修复中国及海外 OEM 魔改系统中系统 OTA 和 Android 大版本升级首次启动未被识别的问题。

社区实机验证请求

请在可救援环境、首次保持 DRY_RUN=true 的前提下,反馈以下路径的结果:

  • 正常重启:不应错误启用 OTA 长超时;
  • A/B OTA 后首次启动:应显示 build_baseline 或兼容更新信号,并使用 OTA 超时;
  • 非 A/B / Recovery OTA 及厂商 Android 大版本升级:构建身份变化应启用 OTA 超时;
  • 无法自动识别的 ROM:设置一次性 OTA 手动保护后,首次成功启动应自动清除标记;
  • 更新失败重试:确认旧构建基线不会被覆盖;
  • 模块覆盖更新:确认 v35 时间线与自适应启动耗时历史仍能恢复。

请附上设备型号、ROM/Android 版本、Root 管理器、OTA 路径,以及脱敏后的 ota_detection_statusota_build_baselinerescue.logboot_history

核心变更

  • 新增 ota-detection.sh,以最近一次确认 SUCCESS 的系统构建基线识别 OTA/大版本升级;
  • 比较 build/system/vendor/product/bootimage 指纹、增量版本、安全补丁、API/Android 版本、构建 ID 与 A/B 槽位;
  • 原有属性、Recovery、BCB、/metadata/otaupdate_engine 信号仍作为兼容兜底;
  • 基线只会在成功启动后推进,失败的更新启动不会丢失 OTA 长超时保护;
  • WebUI/CLI 增加检测来源与一次性 OTA 手动保护;
  • 修复结构化 patch flag 显示、v35 状态恢复、启动时长历史持久化、WebUI DRY_RUN 安全默认值和 CLI 参数转发。

OTA 检测层只决定超时窗口和诊断状态,不修改失败计数、模块禁用、救砖事务、看门狗或重启逻辑。

校验

  • versionCode: 350203
  • SHA-256: 880d3ca15c483c3f3483019bfbc40c40fe345ec4b7a1e624a78823da73f519e1
  • 离线状态机、OTA/持久化、包布局、Shell/JS 语法与发布检查均已通过。

RescueX v3.5.10-r2

RescueX v3.5.10-r2 Pre-release
Pre-release

Choose a tag to compare

@jiayuxuan123 jiayuxuan123 released this 13 Aug 05:41
b448c8b

v3.5.10-r2 修复内容

成功率不再永远 100%

  • 根因:postfs 救砖不写 START 行 → 救砖启动不进统计分母
  • 修复:按 boot token 终态聚合,RESCUE/FAILURE 行也计为启动(失败终态)
  • 验证:3 次救砖场景 → 7 次启动 4 次成功 = 57%

最近救砖不再显示"从未"

  • 根因链:早期 RTC → LAST_RESCUE_TIME=0 → fix 函数跳过 0 → postfs 旧值覆盖 → 统计丢弃 uptime 时间
  • 修复:fix 允许 0+已救砖时修正;postfs 顺序调整;commit 保留旧时间;统计回退状态文件时间

救砖次数下限补偿

  • 历史行被截断/写入失败时,救砖次数取 max(历史, status RESCUE_COUNT)

versionCode: 350202(v3.5.10-r1=350201 用户可正常收到更新)
SHA256: 0aa3d3c96b7d83ee4bd2cdfce255b00178395513099e0796056c315121d8ba63

RescueX v3.5.10-r1

RescueX v3.5.10-r1 Pre-release
Pre-release

Choose a tag to compare

@jiayuxuan123 jiayuxuan123 released this 13 Aug 04:14

v3.5.10-r1 修复内容

启动统计成功率虚高(治本修复)

  • 之前"所有 SERVICE 行数"当成功次数,历史孤儿 SERVICE 行(无对应 START)导致成功数虚高;旧钳制让成功率永远 100%,救砖后也不下降
  • 现在改为配对计数:SUCCESS 只统计 boot token 能配对到 START 行的 SERVICE 行,重复行只计一次,孤儿行不计
  • 救砖/失败启动会正确反映(离线验证:含救砖场景 4/5 = 80%)

版本号规则

  • v3.5.10-r1 / versionCode 350201(主版本不跳级,同级修复用 -rN 后缀,versionCode 35020 后追加两位递增)

继承 v3.5.10 全部功能(音量键 WebUI 选择、无 WebUI 模式)与 v3.5.9-r1/r2 全部修复。

SHA256: c78634937971d3061f00087363dd7dabbeb29bd914dcdd9e650ee252682e48bf

RescueX v3.5.10

RescueX v3.5.10 Pre-release
Pre-release

Choose a tag to compare

@jiayuxuan123 jiayuxuan123 released this 13 Aug 03:51

v3.5.10 更新内容

新增:安装时音量键选择 WebUI

  • 安装/更新时按 音量+ 安装 WebUI,音量- 不安装(无 WebUI 模式)
  • 60 秒无操作自动安装 WebUI,不会卡住安装
  • 原版 Magisk 会提示"不支持 WebUI",并提供 KsuWebUIStandalone 开源下载:
    https://github.com/5ec1cff/KsuWebUIStandalone

新增:无 WebUI 模式

  • 选择后自动移除 WebUI 页面文件(保留 state 配置与原生看门狗)
  • 所有参数可直接修改 /data/adb/rescuex_data/config.conf(重启生效)
  • 完整性检查已适配:移除页面文件不会误报 COMPROMISED

继承 v3.5.9-r1/r2 全部修复

  • 不再接管 Root 管理器更新队列;BOOT_TOKEN 仅诊断;DRY_RUN 默认开启
  • 启动统计完整性校验(成功率不再超过 100%)

versionCode: 35020(v3.5.9-r2=35011 用户可正常收到更新)
SHA256: 5115883a2fae1357429bbf2acf4b5f05decb3f994566d46fc35b41caad5c1780

RescueX v3.5.9-r2

RescueX v3.5.9-r2 Pre-release
Pre-release

Choose a tag to compare

@jiayuxuan123 jiayuxuan123 released this 13 Aug 03:25

v3.5.9-r2 修复内容

  • 修复 WebUI 启动统计异常:boot_history 重复条目导致成功率超过 100%(如 4 次启动显示 7 次成功 / 175%),现在钳制 SUCCESS ≤ TOTAL 并记录警告日志。
  • 干净重打包:移除 r1 包中误带的 Users/Administrator/.../handoff 路径条目。
  • 版本递增至 versionCode 35011:已安装 v3.5.9-r1(35010)的设备可通过正常更新通道收到此版本。

保留的 r1 安全修复

  • 不再接管 Root 管理器更新队列(modules_update 不再被移动/回放/重启),更新其他模块不再误触发重启。
  • BOOT_TOKEN 仅用于诊断与事务归属,不再单独触发救砖判定。
  • DRY_RUN 默认开启,需用户显式确认后才执行实际救砖。

SHA256: 1d371eba9b40545f4362fbc7c9c427061402e9981a2620e9d917aed4232bcfdc

RescueX v3.5.9-r1 — 归档修复版

Pre-release

Choose a tag to compare

@jiayuxuan123 jiayuxuan123 released this 12 Aug 07:35

变更说明

这是 v3.5.9 的归档修复版本,针对模块更新时误触发救砖的问题进行修正。

本次修复

  • 移除更新队列劫持: RescueX 不再接管 /data/adb/modules_update/data/adb/modules_update_mmrl 目录,这些目录由 Root 管理器(Magisk/KernelSU/APatch)独占管理
  • 保守失败判定: BOOT_TOKEN 变化不再单独触发救砖,仅用于诊断和事务归属
  • DRY_RUN 语义收紧: DRY_RUN 模式下不再伪造成功状态,不会写入 RESCUED 或请求重启
  • RESCUED 状态保护: service.sh 不再覆盖已提交的救砖状态

状态

此版本为归档修复,项目主体保持 v3.5.9 的 MIT 开源协议不变。如有进一步需求,欢迎 fork 自行开发。

校验

文件 SHA256
RescueX-v3.5.9-r1.zip fa7aad2f0ccc54d1e2f15070776489e5aea026aab4aa75a5fde510475ef351c0

RescueX v3.2.8-r1 — 归档修复版

Pre-release

Choose a tag to compare

@jiayuxuan123 jiayuxuan123 released this 12 Aug 07:35

变更说明

这是 v3.2.8 的归档修复版本,针对模块更新时误触发救砖的问题进行修正。

本次修复

  • 移除更新队列劫持: RescueX 不再接管更新队列目录
  • 保守失败判定: BOOT_TOKEN 降级为诊断信息
  • DRY_RUN 默认开启: 首次安装默认为演练模式,用户显式确认后可开启实际救砖
  • 状态机收紧: 看门狗仅在验证的 disable marker 写入后才提交 RESCUED

状态

此版本为归档修复,与 v3.5.9-r1 采用相同的保守修复策略。项目保持 MIT 开源。

RescueX v3.5.9(最终版·已归档)

Choose a tag to compare

@jiayuxuan123 jiayuxuan123 released this 07 Aug 03:51

RescueX v3.5.9 — 当前版本

📦 项目当前处于休眠状态

这是 RescueX 的当前稳定版本。历经 30+ 次迭代、覆盖多轮实机验证,核心救砖功能已完整稳定。
当前停止活跃维护,后续如有新的想法或需求,可能会重启项目开发。

  • 代码保持开源(MIT),可自由使用与 fork
  • GitHub Release 保留下载链接
  • Issue 可能不会及时回复;如需继续维护,建议 fork 自行开发

本版本修复

  • 修复 Android 早期启动时 RTC 尚未可用、BOOT_START=0 导致真实连续重启被提前当作「非失败」的问题
  • 现在优先比较内核 BOOT_TOKEN:只要上一轮未完成且 token 已变化,即使墙钟尚未同步也会计为真实失败
  • 保留 token 缺失或相同 token 时的保守 RTC/用户主动重启宽限逻辑,避免扩大误判范围
  • 当渐进救砖开启时,满足该失败条件会进入三级救砖:第 0 级无法定位嫌疑模块时自动落到第 1 级,写入已验证的模块 disable 标记并提交 RESCUED 状态

验证

  • 新增 tests/early_boot_rescue_test.sh,覆盖实机同类状态:BOOT_START=0、未完成启动、不同 BOOT_TOKEN,验证进入第 1 级并提交 RESCUED
  • tests/test_safety.sh 全部通过(17 项安全测试)
  • 新版 WebUI 协议公告 revision 为 r4,同版本也会重新弹出,阅读倒计时为 8 秒

下载

其他版本

如需旧版本,请前往 Releases 页面 查看历史版本。

RescueX v3.5.8 — 跨 Root 救砖事务恢复中心

Choose a tag to compare

@jiayuxuan123 jiayuxuan123 released this 06 Aug 03:02

RescueX v3.5.8 — 跨 Root 救砖事务恢复中心

重点更新

  • 跨 Root 精确恢复:救砖事务现在记录管理器类型、模块根目录、实际模块路径和由 RescueX 写入的 disable 标记。恢复只移除当前事务中可验证属于 RescueX 的标记,不会按模块 ID 跨 Magisk、KernelSU/SukiSU、APatch 扫描或重新启用用户手动禁用的模块。
  • 可恢复的事务状态:事务写入前先持久化目标 journal;路径消失、根目录变更或标记无法验证时返回 PARTIAL 并保留证据,允许人工复核,而非猜测性恢复。
  • CLI 管理:新增 action.sh --cli rescue status 查询当前事务;执行恢复必须使用 action.sh --cli rescue restore --apply 明确确认。
  • WebUI 安全恢复:原“恢复全部模块”入口改为事务绑定恢复,并显示当前事务状态;APatch bridge 可用时可进入 WebUI,实际模块路径仍由 Shell 后端统一识别。
  • APatch 状态识别:CLI 即使没有预设 APATCH=true,也会通过标准 APatch 模块目录识别当前环境。

安全与兼容性

  • 旧版仅包含模块 ID 的 rescued_disabled.list 不再用于跨 Root 自动恢复,因为它无法验证具体路径归属;缺少 v3.5.8 事务证据时恢复会安全拒绝。
  • 新事务兼容 Magisk、KernelSU、SukiSU Ultra 与 APatch 的标准模块目录。实际刷入和 Root 管理器 WebUI 仍需在对应备用设备执行 TESTING.md

发布文件

  • RescueX-v3.5.8.zip
  • RescueX-v3.5.8.zip.sha256