XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFESystem

【Rust】XFE系统,基于Rust和汇编

公开
关注 0 Fork 0 Star 0
UTF-8

XFESystem 用户约定

每轮完成后提交并推送

用户于 2026-10-14 明确要求:每次改动完成后都要记得推送。每轮完成相关构建和验收后,将本轮改动及其必要依赖提交并推送到对应开发分支,无需再次确认。不得将失败、未执行的检查声称为通过;保留无关的本地改动,不提交凭据、编译输出或临时测试产物。推送失败时保留本地提交并说明实际原因,不强制推送或覆盖他人的提交。

每版自动更新专用启动 U 盘

用户于 2026-10-14 明确要求:每一版都要记得自动写入 U 盘。这是本项目持续有效的授权和交付流程;每版完成构建与验收后,自动将已验证的 x86_64 中文 RAM live 镜像更新到下述专用启动 U 盘,无需再次询问是否更新同一设备。

已确认的目标身份:

  • USB 总线,序列号 230222336207。
  • 正常 UniqueId:5000000000002AEF。
  • 历史正常容量:256060514304 字节;逻辑扇区 512 字节。用户后续明确取消与历史容量完全相等的要求;实际可写空间仍必须足以容纳完整镜像。
  • 硬件显示名为 lankxin T.Pssd USB 3.2;用户希望称其为 XFEstudio。
  • 磁盘编号和盘符可能变化,不能仅按 J:、卷标或磁盘编号选择目标。

写入前必须重新核对完整目标身份、源镜像 SHA256、已通过的发行镜像验收记录及现有分区;拒绝任何系统盘、启动盘、身份不符或无法容纳镜像的设备。容量只作为寻址边界和 GPT 几何计算依据,不因为与历史容量不完全相等而再次向用户确认。使用项目已有 scripts/physical-media.ps1 的磁盘专用计划/校验令牌及安全写入流程。写后核验完整镜像(考虑实际容量导致的 GPT 几何调整)和实际末尾的备份 GPT,关闭句柄,保留离线状态和日志。保留所有既有发行目录及 ZIP,不覆盖旧版产物。

设备曾间歇性显示为 262144 字节、UniqueId 5001FF20564C4900、RAW。用户要求尽量直接重写、避免每次手动拔插。可以先核对同一序列号和精确 USB 存储父节点,仅重启这只设备的驱动栈以尝试恢复;不得重启整个 USB 控制器、根集线器或其他设备。精确存储节点历史值为 USB\VID_2109&PID_0715\MSFT30230222336207,操作前验证当前父子关系。若实际只能寻址 256 KiB,就无法写入 256 MiB 镜像,应记录技术失败,不能只覆盖开头后谎报成功,也不能通过格式化或刷固件绕过边界。自动恢复不成功时再说明需要物理重新连接。

2026-10-14 定向设备重启返回 Windows 退出码 3010(需要重启系统后完成),只读 IOCTL_DISK_GET_LENGTH_INFO 也返回 262144 字节。不要将 3010 当作即时恢复成功,不得为自动更新 U 盘擅自重启宿主电脑。记录在 build/usb-media/XFEstudio-0.2.0-dev.2-1791926174494/recovery-result.json;待用户物理重新连接或自行重启后继续核验并写入。

随后用户重新插入,设备恢复正常。已成功写入并完整校验 x86_64 / 中文 RAM live / 0.2.0-dev.2,当时保持离线。完成记录:build/usb-media/XFEstudio-0.2.0-dev.2-write-1791926820235/completion.json。前述待写记录已由同目录 resolved-by-write.json 标记解决。

2026-10-14 最新已自动更新为 x86_64 / 中文 RAM live / 0.2.0-dev.3。源镜像 SHA256 c6fd067fd2b99bd121b908b397d77eb078346c9858dba8be4ddf849055457d32,实际容量 GPT 调整后的完整镜像 SHA256 967f37e0ace921c37f2cfd93e4b01bc06bff678392a7076dfe74549c558debe5;完整 256 MiB 及真实末尾备份 GPT 校验通过,辅助进程退出、句柄关闭,当前 U 盘保持离线。本次容量正常,无需拔插或重启设备。完成记录:build/usb-media/XFEstudio-0.2.0-dev.3-write-1791929195597/completion.json。下一版继续同一安全流程自动更新。

写入系统镜像不等于刷写 U 盘、键盘或主板固件。该自动更新授权只适用于上述专用启动介质,不适用于内置磁盘或其他 USB 设备。

辅助脚本兼容 Windows PowerShell 5:读取 UTF-8 JSON 时显式使用 Get-Content -Raw -Encoding UTF8,避免中文字段被按 ANSI 解码导致 JSON 失效。分区盘符的 null 与 NUL 字符使用语义比较,不能直接比较不同 PowerShell 版本序列化的 JSON。写前编码/解析失败仍须保留独立日志,修复后使用新的结果文件名重试。