v0.24.0 — index sidebar: accessibility, design tokens, sticky Contracts header
A Layer-3 refinement pass (driven by a design audit). This release also rolls up the v0.23.0 changes, which were committed but never published to PyPI.
New in v0.24.0
- Accessibility: the faint tertiary text (contract source paths, the navigator's
R/N visited · U unresolvedline, scope and legend text) is darkened to clear WCAG AA contrast in both light and dark themes. - Design tokens: added
--text-*,--space-*(4px base), and--radius-*scales next to the colour tokens; removed every blurry half-pixel font size. - Contracts navigator: promoted from a small eyebrow label to a sticky section header (list icon + right-aligned count) that anchors the scrolling sidebar; contract names now claim the full row width before ellipsising, with a hover tooltip for long names.
- Markup / a11y fix: the per-contract collapse toggle is now a dedicated
<button>(the chevron) sitting beside the pin link, instead of a heading that wrapped the pin (valid HTML; the pin is independently focusable). - Interface Bindings: the card title stays on one line in the fixed-width sidebar.
Rolled up from v0.23.0 (not previously on PyPI)
- Index terminology refresh:
No modifiers/With modifiers/Unresolvedfacet pills;visited(wasreviewed);Interface Bindingscard heading. - Flow-page node rings: a warm ring on the entry/root node, a dashed blue ring on the active (viewport-centre) node.
solFlowheader wordmark.
Pure Layer 3 — no analysis, backend, or dependency changes. Update with `pipx upgrade solflow`.