Add validated OTA candidate publishing and fix 1.1.2 dependency failure
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
# 奇妙小屏幕控制器 OTA 1.1.2
|
||||
|
||||
> **不可用,请勿安装。** 本包要求 `paramiko==4.0.0`,但内含的离线 wheelhouse 缺少该 wheel,设备会在安装依赖阶段失败并回滚。请改用修复后的 `1.1.3`;已安装 `1.1.1` 的设备可直接升级到 `1.1.3`,无需经过本包。本文件只标记历史坏包,原 `.ota`、manifest 和 SHA-256 保持不变。
|
||||
|
||||
- 软件版本:`1.1.2`
|
||||
- 导出时间:`2026-09-26T16:59:03+08:00`
|
||||
- 说明:发布当前工作区设备端更新:BLE 控制与网络配置改进、OTA 内核恢复和运行期保护;包含新增离线 Python 依赖。
|
||||
@@ -10,4 +12,4 @@
|
||||
|
||||
在系统设置上传 OTA;每个 minor 的 .0 必须按顺序安装,同系列补丁允许跳过。1.1.0 含 frpc 0.71.0 离线组件;已有完整组件会跳过,否则修复并保留配置和启停状态。初次安装默认关闭。禁止跳过失败测试;失败自动恢复。
|
||||
|
||||
本目录是可删除的发布产物,不得被源码、脚本或后续版本引用。
|
||||
本目录作为历史 OTA 长期保留,不得被源码、脚本或后续版本当作构建输入。
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
# 奇妙小屏幕控制器 OTA 1.1.3
|
||||
|
||||
- 软件版本:`1.1.3`
|
||||
- 导出时间:`2026-09-27T18:03:25+08:00`
|
||||
- 说明:修复 1.1.2 OTA 将电脑端 Paramiko 误列入设备依赖导致离线安装失败;1.1.1 可直接升级至 1.1.3,包含 1.1.2 的设备端功能。
|
||||
- 产物:`matrix-screen-controller-1.1.3.ota`
|
||||
|
||||
- 包类型:应用更新包
|
||||
- 前置系列基线:`1.1.0`
|
||||
|
||||
在系统设置上传 OTA;每个 minor 的 .0 必须按顺序安装,同系列补丁允许跳过。1.1.0 含 frpc 0.71.0 离线组件;已有完整组件会跳过,否则修复并保留配置和启停状态。初次安装默认关闭。禁止跳过失败测试;失败自动恢复。
|
||||
|
||||
本目录作为 OTA 发布产物长期保留,不得被源码、脚本或后续版本当作构建输入。
|
||||
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"format_version": 2,
|
||||
"artifact_type": "ota",
|
||||
"software_version": "1.1.3",
|
||||
"created_at": "2026-09-27T18:03:25+08:00",
|
||||
"notes": "修复 1.1.2 OTA 将电脑端 Paramiko 误列入设备依赖导致离线安装失败;1.1.1 可直接升级至 1.1.3,包含 1.1.2 的设备端功能。",
|
||||
"artifact": "matrix-screen-controller-1.1.3.ota",
|
||||
"artifact_bytes": 27010021,
|
||||
"artifact_sha256": "db44e0b404a664d6d4f0495dea72106e7f7229aca00326f044ab229c6dd67d86",
|
||||
"package_kind": "application",
|
||||
"required_checkpoint": "1.1.0",
|
||||
"is_checkpoint": false
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:db44e0b404a664d6d4f0495dea72106e7f7229aca00326f044ab229c6dd67d86
|
||||
size 27010021
|
||||
@@ -0,0 +1 @@
|
||||
db44e0b404a664d6d4f0495dea72106e7f7229aca00326f044ab229c6dd67d86 matrix-screen-controller-1.1.3.ota
|
||||
@@ -20,4 +20,6 @@
|
||||
|
||||
正式镜像必须通过 `核桃派软件源代码/scripts/export_release.py image` 构建,禁止直接调用旧的 FAT 原地刷新脚本。新版本先用 `--candidate-output` 在正式目录外构建;同一字节候选通过摘要绑定的真实 TF 卡正向验收后,再用 `--validated-candidate` 和 `--validation-report` 晋升,晋升前会重建期望 bundle 并重新只读验证。候选阶段不得修改 `VERSION`、发布记录或正式目录。当前版本坏包的授权修复继续使用 `--repair-current`。构建主机只需 Python 标准库与已检查的 Linux 镜像工具,不得用安装 Pillow/FontTools 的临时 venv 掩盖导出器导入错误;构建不访问网络。
|
||||
|
||||
正式 OTA 使用同一入口的 `ota --candidate-output` 先在正式目录外构建;导出前核对设备端直接 Python 依赖、固定版本及 wheel 摘要清单。对候选包实际载荷做目标架构无网络解析和板端隔离安装,再按摘要执行真实 OTA、恢复试装前设备状态,最后使用 `ota --validated-candidate --validation-report` 原字节晋升。候选和验收失败均不推进 `VERSION` 或发布记录;1.1.2 是保留原字节并在其 README 标记的不可用历史包,1.1.1 可直接安装 1.1.3。
|
||||
|
||||
Windows 与 Linux 构建机之间传输时,先在 Codex 临时目录生成不含凭据的项目快照及 IMG 压缩副本,并在解压前后分别校验 SHA-256。PuTTY SCP 对中文远端路径不可靠时,只在明确的远端临时根建立 ASCII 下载目录;同文件系统可使用硬链接避免复制第二份大型 IMG,启用 `protected_hardlinks` 时仅用 sudo 创建这些明确硬链接。官方 `SHA256SUMS` 使用相对文件名,必须在清单所在目录校验。传输、解压、loop、挂载和 ASCII 下载目录在产物回传并复核后按明确绝对路径清理。
|
||||
|
||||
@@ -62,5 +62,11 @@
|
||||
"introduced_in": "Android 首版开发,未推进设备发布版本"
|
||||
}
|
||||
],
|
||||
"retired": []
|
||||
"retired": [
|
||||
{
|
||||
"id": "paramiko-device-dev-requirement",
|
||||
"retired_in": "1.1.3",
|
||||
"reason": "1.1.2 将仅供电脑端移动测试的 Paramiko 误列为设备端开发依赖,却未提供对应 AArch64 wheel;1.1.3 移出设备安装清单。该 wheel 从未进入离线材料,无二进制或 SHA-256 条目可删除。"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user