Repository navigation
Osteosarc 0.2.0
Adds a versioned fixture recipe contract and common selection executor so callers can freeze exact records, source/RG/segment witnesses, reference/other controls, stratified sampling and assembly context. Standalone, Dataset and CLI entry points return identical membership and inclusion reasons. Required observations cannot disappear under caps; genuine duplicate occurrences remain explicit.
Includes pinned historical vaccine targets and explicit unresolved SV entries, strict missing-witness failures, and separate BAM-binary and legacy SAM-text identities. Binary identity retains typed auxiliary bytes, including float values that print identically in SAM.
Part 1 of the fixture consolidation stack; addresses #12. SV recovery and bundle generation follow in separate PRs. Downstream adoption and reviewed SV selector migration are tracked by #15.
Validation: ruff check osteosarc tests scripts; python -m pytest -q (193 passed). Tests cover API/Dataset/CLI parity, ordering, source/RG collisions, duplicates, rare controls, empty/unresolved/omitted states, context and float precision.
Pre-merge hardening: selection accepts record/region iterators without consuming them prematurely; malformed recipe structures fail before source access; exact selections require an explicit record map; cached archive subsets validate the original source checksum separately from output integrity; unavailable members carry explicit zero counts. Added regression tests and re-reviewed the final diff. Strict docs and sdist/wheel builds pass.