From d324d87529b33fb60b7fe8f26f089984c37c73ad Mon Sep 17 00:00:00 2001 From: host Date: Sat, 7 Nov 2026 01:08:28 +0000 Subject: [PATCH] =?UTF-8?q?fix(chv-muse-round11):=20lockfile=20DECLARED=5F?= =?UTF-8?q?SOURCES=20=E8=A1=A5=20P3/vsock=20=E5=85=AD=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 717efc4 镜像真机实测:BUILDINFO.contents 含 chv-authd 三件套、 cloud/chv/authd.py、cloud/chv/sentinel.py、vsock_notify,但两 脚本 DECLARED_SOURCES 没有它们——generate 记 6 项 unresolved, verify 与 check 双双失败(contents 未覆盖)。V-9 的 912edef 没暴露:它的 contents 里根本没有这 6 项。 与 9f929b1 的 P2 三件套同款修法:六项皆仓库内脚本,版本随 repo_commit。合成 BUILDINFO 清单扩到与 717efc4 真实 contents 一致(另补 systemd-container 进 dpkg 假值),反向对照已验: 只撤修复时 LockfileTest 4 测里 2 测失败。 附带教训:经 ssh->wsl.exe 的命令内层退出码一律被吞成 0 (python3 -c 'sys.exit(1)' 回显 RC=0),此前三项验证只看 RC 会把失败判成通过;此后一律以输出文本为准绳(须见 'lockfile 校验通过' 行且无 unresolved 警告)。 --- chv-guest/check_lockfile.py | 10 ++++++++++ chv-guest/generate_lockfile.py | 10 ++++++++++ cloud/tests/test_chv_residual.py | 13 ++++++++++++- 3 files changed, 32 insertions(+), 1 deletion(-) diff --git a/chv-guest/check_lockfile.py b/chv-guest/check_lockfile.py index 98bd1b8..4d39fdb 100644 --- a/chv-guest/check_lockfile.py +++ b/chv-guest/check_lockfile.py @@ -30,6 +30,16 @@ DECLARED_SOURCES = { "chv-cell": "repo_commit", "chv-broker": "repo_commit", "chv-browser": "repo_commit", + # 对齐 Muse P3 + P1 vsock:authd 三件套、authd/sentinel + # 叶子模块与 vsock 通知脚本,均是仓库内脚本,版本随 + # repo_commit。缺了它们 check 会报 contents 未覆盖(717efc4 + # 真机实测:6 项 unresolved,verify 与 check 双双失败)。 + "chv-authd": "repo_commit", + "git-credential-chv-authd": "repo_commit", + "chv-authd.service": "repo_commit", + "cloud/chv/authd.py": "repo_commit", + "cloud/chv/sentinel.py": "repo_commit", + "vsock_notify": "repo_commit", } diff --git a/chv-guest/generate_lockfile.py b/chv-guest/generate_lockfile.py index 8876799..5eb0ee2 100644 --- a/chv-guest/generate_lockfile.py +++ b/chv-guest/generate_lockfile.py @@ -51,6 +51,16 @@ DECLARED_SOURCES = { "chv-cell": "repo_commit", "chv-broker": "repo_commit", "chv-browser": "repo_commit", + # 对齐 Muse P3 + P1 vsock:authd 三件套、authd/sentinel + # 叶子模块与 vsock 通知脚本,均是仓库内脚本,版本随 + # repo_commit。缺了它们 generate 会记 6 项 unresolved, + # verify 与 check 双双失败(717efc4 真机实测)。 + "chv-authd": "repo_commit", + "git-credential-chv-authd": "repo_commit", + "chv-authd.service": "repo_commit", + "cloud/chv/authd.py": "repo_commit", + "cloud/chv/sentinel.py": "repo_commit", + "vsock_notify": "repo_commit", } diff --git a/cloud/tests/test_chv_residual.py b/cloud/tests/test_chv_residual.py index eb23d6a..fc26da3 100644 --- a/cloud/tests/test_chv_residual.py +++ b/cloud/tests/test_chv_residual.py @@ -418,7 +418,8 @@ class LockfileTest(unittest.TestCase): "openssh-client 1:9.9", "cloud-init 9.9", "python3 9.9", "python3-pip 9.9", "curl 9.9", "ca-certificates 9.9", "xz-utils 9.9", - "fonts-wqy-microhei 9.9", "fontconfig 9.9"] + "fonts-wqy-microhei 9.9", "fontconfig 9.9", + "systemd-container 9.9"] info = { "tag": "chv-guest-24.04-0.164.0-alpha.9-abc1234", "ubuntu": "24.04", @@ -432,6 +433,16 @@ class LockfileTest(unittest.TestCase): "fonts-wqy-microhei", "fontconfig", "codex", "codex-code-mode-host", "codex-resources/bwrap", "/app/host.py", "gt", "chv-sync", + # 与 717efc4 真实 BUILDINFO.contents 对齐: + # P2 三件套 + P3 authd 三件套 + 叶子模块 + + # vsock_notify(缺 DECLARED_SOURCES 登记时 + # generate 记 unresolved、verify/check 失败, + # 合成清单须覆盖才拦得住回归)。 + "systemd-container", "chv-cell", "chv-broker", + "chv-browser", "chv-authd", + "git-credential-chv-authd", "chv-authd.service", + "cloud/chv/authd.py", "cloud/chv/sentinel.py", + "vsock_notify", "playwright", "chromium-headless-shell"], "versions": {"dpkg": dpkg, "pip": ["playwright==9.9.9"],