Skip to content

feat: STARlong binary + long-read window-coverage filter - #116

Open
BenjaminDEMAILLE wants to merge 2 commits into
scverse:mainfrom
BenjaminDEMAILLE:bd/starlong
Open

feat: STARlong binary + long-read window-coverage filter#116
BenjaminDEMAILLE wants to merge 2 commits into
scverse:mainfrom
BenjaminDEMAILLE:bd/starlong

Conversation

@BenjaminDEMAILLE

Copy link
Copy Markdown
Contributor

Summary

  • Add rustar-aligner-long binary (STAR's STARlong: identical CLI, forces the chaining-DP long-read stitcher via Parameters::long_read, matching how native STAR selects it by binary rather than a flag).
  • Wire params.long_read through stitch_seeds_with_jdb_debug into a new window_read_coverage (ReadAlign_stitchPieces.cpp's WC accumulation, faithful to upstream's rLast=0 under-count for a seed starting at read position 0) and gate the winReadCoverageRelativeMin/winReadCoverageBasesMin cluster filter on long_read, since standard STAR does not filter clusters by seed coverage.
  • Themed split of the original bundled WASP+everything PR, per docs-old/dev/porting-from-star-rs.md.

Test plan

  • cargo build / test / clippy -D warnings / fmt --check all green

BenjaminDEMAILLE and others added 2 commits July 29, 2026 00:33
Add rustar-aligner-long binary (STAR's STARlong: identical CLI, forces the
chaining-DP long-read stitcher via Parameters::long_read, matching how native
STAR selects it by binary rather than a flag).

Wire params.long_read through stitch_seeds_with_jdb_debug into a new
window_read_coverage (ReadAlign_stitchPieces.cpp's WC accumulation, faithful
to upstream's rLast=0 under-count for a seed starting at read position 0) and
gate the winReadCoverageRelativeMin/winReadCoverageBasesMin cluster filter on
long_read, since standard STAR does not filter clusters by seed coverage.

Refactor stitch_seeds_core's preamble into prepare_stitch_input, shared with
the (upcoming) STARlong chaining-DP stitcher stitch_seeds_long_read.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
`extend_alignment` gained an `extend_to_end` argument when --alignEndsType
landed. The two long-read chaining call sites pass `false`: they score a seed's
own extension potential during chaining, and --alignEndsType applies at the read
ends, not there.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant