v0.1.7
Viewer-prep basis selection — extend_for_viewer() auto-selects the count basis instead of erroring when an object kept only normalized values: it prefers raw counts (log1p), falls back to a log-normalized measure (used as-is, with a warning), and never uses a scaled/z-scored measure. The CLI gains --basis {auto,raw,lognorm} + --counts.
Includes a fix for a name-shortcut hole: a measure literally named counts that is actually scaled is no longer mis-picked as raw and log1p'd — the raw picker now excludes state == "scaled", symmetric with the log-normalized name fallback.
The selection contract is identical across R (.viewer_counts_basis), Python (_select_counts_basis), and JS (selectCountsBasis), enforced by cross-surface parity tests.
Packages: R lstar 0.1.7 · Python lstar-sc 0.1.7 (PyPI).