Files
tatlock/CHANGELOG.md
T
jpmschweitzerandClaude ab8e3b1566 Bump version to 0.1.1
Version increment to mark basic setup completion milestone.

Changes:
- Updated APP_VERSION to 0.1.1 in src/core/config.py
- Released CHANGELOG.md [Unreleased] section as [0.1.1]
- Updated version links to use git.schweitz.net repository

This version represents the completion of all core infrastructure:
- Agent interface and implementations
- Responses API with full feature set
- Chat Completions wrapper
- Comprehensive test coverage (95 tests, 78.95%)
- Production-ready architecture

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-06 19:55:56 +01:00

4.7 KiB

Changelog

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

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

Unreleased

0.1.1 - 2025-12-06

Added

Agent Interface (Phase 1)

  • Abstract AgentInterface base class for model abstraction
  • LoremTesterAgent: Full-featured mock agent with realistic behavior
    • Configurable reasoning effort levels (none, minimal, low, medium, high, xhigh)
    • Random tool/function call generation for testing
    • Error triggers: rate_limit, context_overflow, invalid_tool
    • Temperature-based response variation
  • TatlockAgent: Placeholder for future PydanticAI integration
  • ModelRegistry: Centralized model management and discovery
  • 18 agent tests with comprehensive coverage

Responses API (Phases 2, 3, 6)

  • OpenAI Responses API format with structured output (/v1/responses)
    • Reasoning items (thinking summaries with configurable effort)
    • Function call items (tool execution simulation)
    • Message items (assistant responses with output_text)
    • Streaming and non-streaming modes
  • Real-time streaming with SSE-Starlette
  • Conversation history management (Phase 3):
    • Hybrid client/server approach (client maintains state, server tracks)
    • Auto-generated deterministic conversation IDs from message hash
    • Configurable max turns with automatic trimming (default: 20)
    • Context window management with approximate token counting
    • Token usage statistics
    • Placeholder for future vector memory (Qdrant)
  • Advanced features (Phase 6):
    • Parameter validation with Pydantic field validators
    • Temperature: 0.0-2.0 range enforcement
    • Reasoning effort: 6 levels validation
    • Max output tokens: positive integer enforcement
    • Stop sequences: up to 4, non-empty strings
    • Real-time stop sequence detection during streaming
    • Real-time max tokens enforcement with token counting
  • 45 Responses API tests (router, error handling, history, advanced features)

Chat Completions Wrapper (Phase 5)

  • OpenAI Chat Completions compatibility layer (/v1/chat/completions)
  • Single source of truth architecture (wraps Responses API)
  • Automatic reasoning generation
  • Converts reasoning items to <think> tags for Open WebUI
  • Pipeline prefix preservation
  • System message support
  • Enhanced error types (RateLimitError, ContextLengthError)
  • 12 Chat Completions tests (router + streaming wrapper)

Application Infrastructure

  • FastAPI application factory pattern
  • CORS middleware with configurable origins
  • Global exception handlers:
    • AppException handler for custom errors
    • RequestValidationError handler for Pydantic validation
    • General exception handler for unexpected errors
  • Lifespan management for startup/shutdown
  • OpenAPI schema with interactive documentation
  • 16 main application tests

Testing Infrastructure

  • Comprehensive test suite: 95 tests, 78.95% coverage (up from 62%)
  • Async test support with pytest-asyncio
  • Test fixtures for sync and async clients
  • Integration tests for all API endpoints
  • Streaming functionality tests
  • Parameter validation tests
  • Error handling tests
  • Conversation history tests

Documentation

  • Complete README.md rewrite with hybrid architecture
  • Architecture diagrams and decision documentation
  • AGENTS.md with technical implementation details
  • API usage examples for all endpoints
  • Conversation history guide
  • Open WebUI integration instructions
  • Troubleshooting section
  • Implementation planning documents

Changed

  • Hybrid architecture with Responses API as primary endpoint
  • Chat Completions now wraps Responses API (no duplicate logic)
  • Enhanced error handling with OpenAI-compatible format
  • Improved streaming with word-by-word delivery
  • Better test organization with domain-based structure

Security

  • Minor version locking for all dependencies
  • All packages CVE-checked (as of 2025-12-06)
  • Environment variable protection via .gitignore
  • No known vulnerabilities in dependency tree
  • Input validation on all API endpoints

0.1.0 - 2025-12-06

Added

  • Project initialization
  • Python 3.12.11 environment
  • FastAPI 0.123.9 web framework
  • PydanticAI 1.27.0 dependency (ready for future integration)
  • Mock chat completions (lorem ipsum responses)
  • Mock model listing (mistral-nemo:latest)
  • Testing infrastructure (pytest, coverage, ruff, mypy)
  • Configuration management with pydantic-settings
  • CORS middleware
  • Exception handlers (OpenAI-compatible error format)