Files
veritext/changelog.md

1.9 KiB

Changelog

All notable changes to Veritext will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

Added

  • Project scaffold with pyproject.toml and development tooling
  • Core exception hierarchy (VeritextError and subclasses)
  • Core types: ValidationContext, CheckResult, ValidationResult
  • Word tokeniser with Unicode normalisation support
  • Configuration module with pydantic-settings
  • Structured logging with structlog
  • Metrics module with Metric protocol, AggregateStats, and BatchResult types
  • BLEU metric implementation (BLEU-1 through BLEU-4 with brevity penalty)
  • Lexical similarity metric (Jaccard similarity and token overlap)
  • ROUGE metric (ROUGE-1, ROUGE-2, ROUGE-L with precision/recall/F-measure)
  • Flesch-Kincaid readability metrics (grade level and reading ease)
  • Batch scoring with aggregate statistics for all metrics
  • Validators module with Check protocol for validation checks
  • Metric-based validators: BleuValidator, RougeValidator, LexicalValidator
  • Constraint validators: LengthValidator, ReadabilityValidator, ContainsValidator, ExcludesValidator
  • Composite validators: AllOf (all checks must pass), AnyOf (any check must pass)
  • Factory functions for clean validator API (bleu(), rouge(), lexical(), length(), readability(), contains(), excludes(), all_of(), any_of())
  • Semantic similarity module with embedding-based text comparison (requires veritext[semantic] extra)
  • SemanticSimilarity metric using sentence-transformers for semantic relatedness
  • SemanticValidator for threshold-based semantic similarity validation
  • semantic() factory function for creating semantic validators
  • Embedding caching for performance optimisation in repeated comparisons