feat(guanghu-os): add cross-root supervisor slice

This commit is contained in:
冰朔 2026-08-15 23:49:28 +08:00
commit 9db3ecd2e7
10 changed files with 317 additions and 5 deletions

View file

@ -0,0 +1,27 @@
---
type: ADR
id: "0177"
title: "Guanghu cross-root supervisor takeover"
status: accepted
date: 2026-08-15
refines: "0176"
development_id: "DEV-20260815-001"
---
# 光湖跨根监督接管
## 决定
initramfs 的 `/run` 会被移动到新根系统,因此挂根前监督器留下的启动周期交接可以由根系统中的
光湖监督实体重新核验。根监督实体必须重新读取实时 DMI、启动 ID、内核标记与根 UUID确认它们
和交接完全一致,写入 `ROOT_SUPERVISOR_ACTIVE` 状态并保持运行;失败必须阻断正常系统目标。
生产投影使用早于 `sysinit.target` 的 systemd 单元。隔离验证使用只读最小 ext4 根镜像和静态
BusyBox只证明跨 `switch_root` 的连续接管与常驻进程,不把它等同于真实机器部署、完整 Linux
按需唤醒或最终光湖 OS 主控。
## 否决
- 只把 JSON 文件从 initramfs 带进新根:文件是证据,不是持续运行的监督主体。
- 让普通 Linux 服务晚于完整用户态再读取交接:不能证明控制连续性。
- 在隔离根切换验证前修改京东真实启动:风险边界不成立。