- M1: after a failed Save the Collections dialog shows the membership
loading and keeps Save disabled until the re-read lands, so a stale
plan cannot be sent.
- M2: the changes a Save made reach the page only when the dialog
closes, so a collection page's reload cannot remove the dialog
before its failure is read.
- L4: a New collection name equal to a listed collection ignoring case
is that collection's checkbox, checked; never an add then a remove.
- L5: a name that cannot be a collection name is refused on the field;
nothing is sent, the checkbox edits stay, no re-read.
- L6: focus starts on the field and moves to the first checkbox once
listed; closing after a re-render replaced the trigger focuses the
inspector's current Collections… button or its heading
(openContentDialog takes an optional focusTarget).
- L3, L7: TESTING.md D138/D139 describe the stale-source and deleted
collection outcomes and the above; the viewer spec asserts no listing
request while it is open, and a browser test covers M2.