Commit Graph

19 Commits

Author SHA1 Message Date
62fac688e4 test(metrics): add ROUGE and readability tests 2026-02-03 17:03:34 +00:00
14ac7dbbb9 feat(metrics): export ROUGE and readability from module 2026-02-03 17:03:28 +00:00
aad933f9c4 feat(metrics): add readability implementation 2026-02-03 17:03:24 +00:00
2a7476046d feat(metrics): add ROUGE implementation 2026-02-03 17:03:19 +00:00
914c738013 feat(metrics): add ROUGE and readability result types 2026-02-03 17:03:14 +00:00
a4f5fa4cc6 docs(changelog): add metrics module entries 2026-02-03 16:46:03 +00:00
027d2d3beb test(metrics): add BLEU and lexical tests
Add comprehensive tests for BLEU and lexical metrics including edge
cases, batch scoring, and aggregate statistics.
2026-02-03 16:45:57 +00:00
74ee8c2e7b feat(metrics): add lexical similarity metrics
Implement Jaccard similarity and token overlap metrics with batch
scoring support.
2026-02-03 16:45:51 +00:00
e1c8c25142 feat(metrics): add BLEU implementation
Implement BLEU-1 through BLEU-4 with modified n-gram precision,
brevity penalty, and support for multiple references.
2026-02-03 16:45:45 +00:00
e6167005e5 feat(metrics): add metric protocol and batch types
Add Metric protocol, AggregateStats for statistical summaries, and
BatchResult for batch processing support.
2026-02-03 16:45:38 +00:00
14dcddcbba chore: add gitignore and remove cached files
Add comprehensive gitignore for Python projects. Remove accidentally
committed __pycache__ directories.
2026-02-03 16:16:33 +00:00
1e3618e637 test(core): add tokenisation and types tests
Cover WordTokeniser (Unicode, empty input, punctuation, multiple scripts)
and validation types (immutability, edge cases, failure summary).
2026-02-03 16:16:20 +00:00
a65249fa44 feat(core): add config and structured logging
Implement pydantic-settings based configuration with environment variable
support and structlog integration for JSON/console output modes.
2026-02-03 16:16:13 +00:00
697b1ddfeb feat(core): add tokenisation with unicode support
Implement Tokeniser protocol and WordTokeniser class with NFC Unicode
normalisation, optional lowercasing, and punctuation removal.
2026-02-03 16:16:07 +00:00
efc6a031a3 feat(core): add validation types
Implement ValidationContext, CheckResult, and ValidationResult models
using Pydantic with frozen (immutable) configuration.
2026-02-03 16:16:01 +00:00
a1e862550c feat(core): add exception hierarchy
Implement VeritextError base class and specialised exceptions:
MetricError, ValidationError, BenchmarkError, ConfigurationError, DependencyError.
2026-02-03 16:15:55 +00:00
60aaa33327 chore(project): add pyproject.toml and project configuration
Configure Python project with pydantic, structlog, typer, rich dependencies.
Set up ruff, mypy, pytest tooling with strict type checking.
2026-02-03 16:15:48 +00:00
818e241ab2 docs(plans): improve consistency and add edge case handling
- Add requires_reference property to Metric protocol for standalone metrics
- Make reference parameter optional in score/batch_score methods
- Add comprehensive Edge Case Handling section (empty text, Unicode, etc.)
- Expand phase tasks with explicit test coverage requirements
- Fix path reference to use relative workspace path
- Add missing test_runner.py to directory structure
- Clarify SemanticValidator integration in Phase 5
- Fix tuple/list type annotation in Benchmark.evaluate()
2026-02-03 16:04:02 +00:00
49f1e27cb1 docs: add project and implementation plans
Comprehensive documentation for Veritext semantic text validation framework:
- Project plan with architecture, use cases, and success criteria
- Implementation plan with 9 phases, interfaces, and verification steps
2026-02-03 15:27:00 +00:00