Skip to content

v0.2.0

@nshkrdotcom nshkrdotcom tagged this 26 Nov 21:21
Features:
- Implemented Semantic Similarity Voting Strategy (:semantic_similarity) to group responses by textual similarity using Levenshtein, Jaccard, or Cosine metrics. This allows for better consensus detection on answers with varied phrasing.
- Implemented Ranked Choice Voting Strategy (:ranked_choice) supporting Instant-Runoff Voting (IRV) and Borda Count methods for handling multi-option preference scenarios.
- Created Similarity module providing core text distance algorithms, similarity matrix computation, and threshold-based clustering logic.
- Added return_original_answer option to voting strategies, enabling the return of the representative original response text instead of the normalized value.

Documentation:
- Added comprehensive design document in docs/20251125/enhancement_design.md detailing architecture, algorithms, and use cases.
- Added implementation summary in docs/20251125/implementation_summary.md.
- Updated README.md with detailed examples and configuration options for the new voting strategies.
- Updated CHANGELOG.md with v0.2.0 release notes.

Code Quality & Maintenance:
- Refactored response extraction logic in Executor to be more idiomatic.
- Added Dialyxir dependency for static analysis.
- Added comprehensive test suites for Similarity, Semantic Similarity, and Ranked Choice modules including property-based tests.
- Bumped package version to 0.2.0 in mix.exs.
Assets 2
Loading