You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Decide and land a non-XFAIL t0011 allsquash ownership assertion: either pass --squashuser=$(id -un) so exp/ matches $(id -u):$(id -g), or change the test to expect nobody (uid 65534). This is next because mapping issue #1 landed; t0011 is independent of t0013.
Behavioral contract: one chosen mechanism makes t0011 PASS without XFAIL: --squashuser=$(id -un)or assert uid/gid 65534, not both mixed with t0013.
Invariants: linux stays mirror-only; keep diod/xfail.txt t0011 rows until this test PASSes; do not treat floating DIOD_REF=master as a SHA pin.
Proof Promotion
Current level: Mapped
Target level: Integration
Exact commands or generated artifacts: named v9fs/test diod-regression run of t0011 without matching XFAIL rows; eval must not hide a real FAIL
Discriminating negative/failure evidence: FAIL if squash is actually dropped (t0012 would also fail; Rgetattr uid 65534 would be absent). FAIL if the assertion still expects $(id -u) while export remains nobody 65534.
Complete this sentence:
The proof would fail if the implementation used “v9fs dropped squash” as the fix because t0011 export Rgetattr uid 65534 and green t0012 would not match that story, while exp/ would still be 65534 unless --squashuser=$(id -un) or the assertion is changed.
Review Focus
Highest-risk semantics: copying an expected uid into the test without a squashuser trial, or mixing this slice with t0013
What could pass broad tests while still being wrong: leaving t0011 in diod/xfail.txt and calling the slice done; or changing assertion and squashuser at once so the discriminator is lost
Rollback, compatibility, security, migration, or observability concern: keep XFAIL until PASS; do not add synthetic FAIL rows
Boundaries
In scope: t0011 squashuser vs ownership assertion on the pinned kernel/diod/harness versions
Explicitly not claimed: t0013 ACL; kernel squash rewrite; chaos/diod source change unless a later pin proves it; Debian apt diod
Deferred dependencies: drop matching diod/xfail.txt rows only after PASS; optional DIOD_REF SHA pin is a separate follow-up
Work Slice
Human Goal
Decide and land a non-XFAIL t0011 allsquash ownership assertion: either pass
--squashuser=$(id -un)soexp/matches$(id -u):$(id -g), or change the test to expect nobody (uid 65534). This is next because mapping issue #1 landed; t0011 is independent of t0013.Product tracker: v9fs/test#28
Evidence Anchor
v9fs/testharness +chaos/diod--allsquash+ Actions artifactsv7.2=8d3ae59288f1e7d58d76558a6ee96d533bc5019f(Imagekernel-latest/kernel-v7.2)94b2182f54b30a073d893990db8f64e69f0d911aunexpected: 0de51d1ee1bd5ccf1d8c16b96227c8bb03ec50106(chaos/diodmaster since 2026-06-23)t0011-v9fs-allsquash.t; diod--allsquash(default squashuser nobody / export uid 65534); test statsexp/and expects$(id -u):$(id -g)Target Change
v9fs/test(diod invocation and/or t0011 assertion). Kernel squash path is already working.--squashuser=$(id -un)or assert uid/gid 65534, not both mixed with t0013.diod/xfail.txtt0011 rows until this test PASSes; do not treat floatingDIOD_REF=masteras a SHA pin.Proof Promotion
v9fs/testdiod-regression run of t0011 without matching XFAIL rows; eval must not hide a real FAILRgetattr uid 65534would be absent). FAIL if the assertion still expects$(id -u)while export remains nobody 65534.Complete this sentence:
Review Focus
diod/xfail.txtand calling the slice done; or changing assertion and squashuser at once so the discriminator is lostBoundaries
diod/xfail.txtrows only after PASS; optionalDIOD_REFSHA pin is a separate follow-upBacklog Position
v9fs/testharness files at the same timeOwnership and Authority
v9fs/linux; no.githubon linux; product merges stay human-gatedv9fs/test(diod flags / t0011 /diod/xfail.txt). Not this closeout run.Durable State
Done