Skip to content

test+chore: novelty empty-seq edge case, make ci target, CHANGELOG - #28

Merged
cschanhniem merged 1 commit into
mainfrom
feat/final-presynth-polish
Jun 28, 2026
Merged

cschanhniem merged 1 commit into
mainfrom
feat/final-presynth-polish

Conversation

@cschanhniem

Copy link
Copy Markdown
Collaborator

Summary

Final pre-synthesis polish — three small remaining gaps:

  1. Novelty empty-sequence edge case — novelty_score("", refs) was not covered. The function handles it gracefully (returns 1.0 — maximally novel, since an empty string is unlike any reference), but the behaviour was undocumented by any test. Added test_empty_sequence_with_references_does_not_crash to pin this so a future algorithm change in levenshtein/normalization that breaks the invariant is caught here.

  2. make ci target — make lint and make test existed separately. Added a combined ci target (lint → test) so developers have a single local pre-push gate that mirrors what the pre-push hook runs. Added to .PHONY.

  3. CHANGELOG.md — created to document the full history before wet-lab hand-off:

Test plan

  • pytest tests/test_novelty.py — 25 passed (1 new test)
  • Full suite: 815 passed
  • No regressions

- tests/test_novelty.py: add test_empty_sequence_with_references_does_not_crash — pins
  that novelty_score("", refs) returns a value in [0,1] and does not raise; empty sequence
  has levenshtein=len(ref), sim=0 → novelty=1.0; any future change in empty-string handling
  now fails loudly here rather than mid-pipeline
- Makefile: add ci target (lint + test) and mark it .PHONY; developers can run `make ci`
  as a local pre-push gate matching what the pre-push hook runs automatically
- CHANGELOG.md: document all changes from initial pipeline through pre-synthesis quality
  sprint; includes test counts (815), fixed bugs (ensemble crash, CSV column error, etc.),
  new docs (WET_LAB_HANDOFF.md), and version milestones v0.1–v0.4
@cschanhniem
cschanhniem merged commit 1dfe6a5 into main Jun 28, 2026
2 checks passed
@cschanhniem
cschanhniem deleted the feat/final-presynth-polish branch June 28, 2026 02:45
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