Skip to content

2.1.0

Latest

Choose a tag to compare

@cristofima cristofima released this 09 Dec 01:58
· 11 commits to main since this release

🎯 Overview

Version 2.1.0 delivers a significantly enhanced real-time user experience with AG-UI lifecycle events, dynamic status messaging, and dark theme support. This release introduces comprehensive SSE streaming improvements that provide ChatGPT-like status updates during AI agent processing, along with a robust testing infrastructure covering both frontend (108 tests) and backend (132 tests) to ensure reliability and maintainability.


✨ What's New

🚀 New Features

  • AG-UI Lifecycle Events: Implements STEP_STARTED, STATUS_UPDATE, and STEP_FINISHED Server-Sent Events (SSE) that provide real-time feedback during AI agent function execution, creating a responsive and transparent user experience

  • Dynamic Status Messaging: Server-provided status messages are now automatically generated from function [Description] attributes via FunctionDescriptionProvider, enabling multi-agent scalability without hardcoded mappings

  • Dark Theme Support: Full dark mode implementation with system preference detection and manual toggle using next-themes, including updated styling across all chat, conversation, and shared components

  • Content Safety Integration: Azure OpenAI content filter violations are now handled gracefully with CONTENT_FILTER SSE events—blocked messages appear inline in the chat (not as toasts), preserving conversation continuity

  • Progressive Streaming: Chat messages now display incrementally as they are generated, with a ChatGPT-like blinking cursor effect during streaming for enhanced real-time interaction

  • Keyboard Shortcuts: Power-user productivity features including Ctrl+K (focus input), Ctrl+Shift+N (new conversation), and Ctrl+B (toggle sidebar)

  • Enhanced Chat Input: Multiline message support with proper Enter/Shift+Enter handling, plus hover action buttons for copying assistant messages

  • Conversation Message Storage: PostgreSQL-backed persistent storage for conversation messages and metadata via PostgresChatMessageStore

  • Serilog Centralized Logging: Integrated Serilog with console and file sinks for improved observability and debugging capabilities across all backend services

  • Responsive Sidebar: Enhanced toggle behavior with improved mobile responsiveness and smooth transitions

  • New DTOs & Interfaces: Comprehensive data transfer objects for agent messaging (AgentRequest, AgentMessage) and conversation management (ConversationDtos), plus validation and error handling improvements

🔧 Improvements & Refactoring

  • Backend State Management: Enhanced useChat hook to utilize serializedState from backend responses for accurate thread management and state persistence during streaming interactions

  • Development Configuration Cleanup: Removed development-only SQL capture and Azure AI Content Safety references, simplifying configuration and reducing unnecessary dependencies

⚡ Performance Enhancements

  • Updated EntityFramework Core: Upgraded OpenTelemetry EntityFrameworkCore instrumentation and EF Core providers (SQL Server and PostgreSQL) to version 10 for improved performance and compatibility

  • Optimized CI/CD Pipeline: Enhanced workflows with combined coverage reports, caching improvements for faster builds, and parallel test execution

📚 Documentation

  • Architecture Documentation: Added C4 sequence diagrams for List Tasks operation, streaming architecture diagrams, and SSE event flow visualizations

  • Testing Strategy Guides: Comprehensive documentation for both frontend and backend testing strategies, including unit test details, E2E testing guides, and CI/CD integration

  • Lessons Learned: Documented SSE status events architecture patterns and CI/CD pipeline best practices for future reference

  • Content Safety & Database Docs: Updated CONTENT_SAFETY.md with revised architecture details and DUAL_DATABASE_ARCHITECTURE.md with corrected configuration guidance

  • Copilot Instructions: Enhanced GitHub Copilot instructions for C#/.NET development and unit test generation

  • README Updates: Added features overview, article series links, dark theme support details, and Azure OpenAI architecture changes


🧪 Testing Infrastructure

Backend Testing (132 tests)

  • Domain Unit Tests: TaskItem entity tests, TaskConstants validation, ValidationMessages verification
  • Application Unit Tests: TaskFunctions comprehensive coverage including CRUD operations, validation errors, and business rule violations
  • Infrastructure Integration Tests: TaskRepository and ConversationService tests using SQL Server and PostgreSQL Testcontainers

Frontend Testing (108 tests)

  • Unit Tests (71 tests): Components (ChatInput, ChatMessage, LoadingIndicator), utilities (date-utils, constants), and hooks coverage with Vitest + React Testing Library
  • E2E Tests (37 tests): Navigation flows, chat interactions, conversation management, and theme switching with Playwright

📊 Statistics

  • Total Commits: 58
  • Contributors: 1
  • New Features: 12
  • Documentation Updates: 22
  • Test Commits: 9
  • CI/CD Improvements: 5

👥 Contributors


📦 Installation

# Clone or update the repository
git clone https://github.com/cristofima/TaskAgent-AgenticAI.git
git checkout v2.1.0

# Backend (with Aspire Dashboard - recommended)
dotnet run --project src/TaskAgent.AppHost

# Backend (standalone)
cd src/backend/services/TaskAgent/src
dotnet run --project TaskAgent.WebApi

# Frontend
cd src/frontend/task-agent-web
pnpm install
pnpm dev

# Run database migrations (from src/backend/services/TaskAgent/src/)
dotnet ef database update --context TaskDbContext --project TaskAgent.Infrastructure --startup-project TaskAgent.WebApi
dotnet ef database update --context ConversationDbContext --project TaskAgent.Infrastructure --startup-project TaskAgent.WebApi

🔗 Key URLs


🙏 Acknowledgments

Special thanks to the Microsoft Agent Framework (preview) team and the Azure OpenAI team for enabling AI-powered agentic experiences. This release represents significant progress toward production-ready AI task management with enterprise-grade observability and testing.