UI: migrate the sidebar off AdwOverlaySplitView/hand-rolled toggle
plumbing onto AdwNavigationSplitView, with Chart/Sky/Network and
Circles now living in adw::Sidebar sections (libadwaita 1.9). Bundle
the 9 previously system-theme-only icons so macOS/Windows builds don't
depend on an Adwaita-shaped icon theme. Replace the deprecated
AdwViewSwitcherTitle with a two-top-bar AdwWindowTitle+AdwViewSwitcher
design, drop .dim-label for .dimmed throughout, and add a search entry
above the natal aspect list (can run dozens of rows with no prior way
to narrow it). Peers intentionally stay on their existing GtkListBox +
FactoryVecDeque<PeerRow> — relm4 0.10 has no FactoryView impl for
AdwSidebarSection, and that list churns too often (presence, badges)
to hand-roll a full rebuild-on-every-change replacement safely.
Protocol/store/app: add DocOp::RetractAffirm so affirming a doc
revision is a real toggle instead of a one-way action — undoes a
misclick the same self-service way leaving a circle already does.
Threaded through ops/store/pipeline/sdk/app, with a new cucumber
feature (sdk/tests/features/affirmation_retraction.feature) proving
retraction propagates to peers and is attributed to the right voter.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>