fix(chv-muse-r12fix2-2): chv-sync 回落显性化:警告 + 每回落一行审计(P6-2)
R12 复测:worker 226 期间 chv-sync 全程静默走直接路径回落,pull/ push/status 表面 rc=0,privsep/safety 一行没跑——回落只有一句 stderr 警告,无事后可数的痕。本提交让一次回落留两处痕:stderr 警告保留 “worker 不在”标记(措辞加“未走 worker,privsep 未生效”,供驱动 识别)+ 追加一行 JSON 审计到 $USER_HOME/.chv-sync-fallback-audit.log(CHV_SYNC_FALLBACK_LOG 可改 位置;事件/动作/仓/时间戳,delegated_to_worker=false、 privsep_active=false)。审计写失败只记 stderr,绝不中断同步(与 worker _audit 同款口径)。gap 文档诚实边界第 4 条同步更新。 取舍:不改 fail-closed,仍是 fail-open。理由:旧镜像(无 worker) 须仍能同步,改 fail-closed 会把所有旧镜像的同步当场 brick,且无 镜像外恢复手段;本轮项 1 已让新镜像的 worker 开机即起,回落只在 worker 真挂 / 旧镜像时发生,不再是常态路径。旧镜像退役后改为无 worker 即 fail-closed(原定方向不变,见 chv-sync.sh 头注)。 测试:ChvSyncDelegationTest 新增——回落审计一行 JSON(字段全)、 两次回落两行、审计落盘失败不中断同步;走 worker 时不留回落审计 (反向对照)。
This commit is contained in:
1 parent
35d9c3ff3f
commit
7c517f7fcc
3 files changed
+77
-9
No files matched your search
@@ -143,10 +143,13 @@ Base64、零宽字符)、藏在图片/附件/二进制里的指令、需要理
|
||||
(authd 放凭证前)+ 只配 helper 的 git + systemd 沙箱;eBPF
|
||||
cgroup 拦截 + LSM 污点传播是 P5 的范围。不得把本轨写成“出口已
|
||||
全部经 Sentinel 强制”。
|
||||
4. **过渡兼容留了旧路径**:worker socket 不存在时 `chv-sync`
|
||||
pull/push/status 仍走旧的直接路径(只多一句 stderr 警告),为
|
||||
的是旧镜像不被一次改断。旧镜像退役后应删掉该回落,改为无 worker
|
||||
即 fail-closed;删除前不得声称“旧路径已关闭”。
|
||||
4. **过渡兼容留了旧路径(仍是 fail-open,round-12 修复轮第二轮
|
||||
项 2 钉死)**:worker socket 不存在时 `chv-sync` pull/push/status
|
||||
仍走旧的直接路径,为的是旧镜像不被一次改断;但回落不再静默——
|
||||
每次回落都在 stderr 警告(“worker 不在…privsep 未生效”)+ 追加
|
||||
一行 JSON 审计(`~/.chv-sync-fallback-audit.log`)。旧镜像退役
|
||||
后应删掉该回落,改为无 worker 即 fail-closed;删除前不得声称
|
||||
“旧路径已关闭”。
|
||||
5. **无真机验证**:本轮全部是代码 + 本地单测(含 worker 真 socket
|
||||
回路 + 假 git runner)。真机待验证清单见 §4。
|
||||
|
||||
|
||||
Reference in new issue
Block a user