You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit fafc950
Browse filesBrowse the repository at this point in the historyBrowse files
feat: route selectivity_proxy into pilot_priority ranking formula (#48) (#48)
* feat: route selectivity_proxy into pilot_priority formula (#48)
Previously selectivity_proxy was computed in compute_features() but
never reached the pipeline scores dict — so _pilot_priority() couldn't
use it. Low-selectivity candidates (e.g. temporin-like SEED-004) were
ranked identically to selective peers with equal ensemble scores.
Changes:
- pipeline.py: add selectivity_proxy to raw_scores dict (from features)
- pilot.py: add 0.05×selectivity_proxy term to _pilot_priority(); formula now:
ensemble − 0.30×disagreement + 0.05×serum_stability + 0.05×novelty
+ 0.05×selectivity_proxy
Weight 0.05 matches stability and novelty — keeps ensemble dominant.
- test_pilot_panel.py: update 2 existing tests for the new term;
add 5 new tests for selectivity behaviour (higher is better, max delta=0.05,
absent defaults to 1.0, SEED-004 temporin demoted vs selective peer)
- Makefile: update echo to 1086-test suite
- docs: discovery probability updated to ~25-46% (Stage 2: ~41-56%)
SEED-004 temporin demoted 0.035 relative to equivalent selective candidate
* fix: address code review issues from PR #48
- pilot_panel.py: add selectivity_proxy to CSV (_CSV_FIELDS + _row())
so wet-lab teams can audit why candidates were demoted in the CSV handoff
- pilot_panel.py: update write_pilot_markdown() formula string to include
all three bonus terms (stability + novelty + selectivity_proxy); was
two terms out of date — fix the HIGH issue flagged in code review
- pilot_panel.py: add Sel.Px column to the Markdown candidate table
- test_pilot_panel.py: _make() now accepts selectivity_proxy= kwarg
- test_pilot_panel.py: add test_selectivity_proxy_breaks_tie_in_panel_ordering
— first panel-level integration test for the selectivity ranking path
- test_pilot_panel.py: add test_selection_method_describes_full_formula
— guards against future formula-string staleness
- test_pilot_panel.py: update test_correct_columns to include selectivity_proxy
- test_pilot_panel.py: make all four defaults explicit in
test_missing_disagreement_defaults_to_0_5 comment and assertion
- Makefile: update test count to 1088
0 commit comments