Star/Unstar fired the API call but nothing showed it took effect —
Document/Collection have no isStarred field, stars.list is the only
source of truth, so this adds a shared StarStore (one stars.list fetch,
optimistic toggle/rollback on star/unstar) injected at the app root and
read by the sidebar tree rows, collection header row, and DocumentRowView
(document lists, search results, reader sub-documents). Context menu
labels now read "Unstar" once starred, and starred rows show a filled
star.
OutlineKit: stars.list / stars.delete, with test coverage.