Repository navigation
test+chore: novelty empty-seq edge case, make ci target, CHANGELOG - #28
Merged
Merged
Conversation
- 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
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Final pre-synthesis polish — three small remaining gaps:
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. Addedtest_empty_sequence_with_references_does_not_crashto pin this so a future algorithm change in levenshtein/normalization that breaks the invariant is caught here.make citarget —make lintandmake testexisted separately. Added a combinedcitarget (lint → test) so developers have a single local pre-push gate that mirrors what the pre-push hook runs. Added to.PHONY.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)