Skip to content

1.1.0

Choose a tag to compare

@cristofima cristofima released this 19 Oct 17:14
· 132 commits to main since this release

Release Notes

🎯 Overview

This release introduces conversation persistence capabilities, enabling AI agents to maintain context across multiple HTTP requests. Additionally, the codebase has been significantly improved with better immutability patterns, async method naming conventions, and a comprehensive release notes generation system.


✨ What's New

🚀 New Features

  • Conversation Persistence: The TaskAgent now maintains conversation history across multiple requests through the new IThreadPersistenceService. An in-memory implementation (InMemoryThreadPersistenceService) is included for development, with the architecture ready for production implementations using Redis or SQL Server. This ensures users can have continuous, context-aware conversations with the AI agent.

  • Enhanced Task Enumerations: Task Priority and Task Status enums now include a None value, providing better flexibility for handling default or uninitialized states.

  • Release Notes Automation: Introduced a complete release notes generation system powered by GitHub Copilot prompts. This includes:

    • PowerShell script (Analyze-Commits.ps1) for analyzing Git commits and suggesting semantic versions
    • Professional prompt templates for generating user-friendly release notes
    • Semantic versioning configuration with customizable commit type classifications
    • Standardized release notes template for consistency

🔧 Improvements & Refactoring

  • Immutability Enhancements: DTOs including ChatRequest, ContentSafetyResult, PromptInjectionResult, and ContentSafetyConfig now use init accessors for better immutability and thread safety.

  • Async Method Naming: All asynchronous methods in TaskFunctions now follow the Async suffix convention, improving code clarity and consistency with .NET best practices.

  • Repository Method Refinement: TaskRepository methods have been refactored with more concise syntax while maintaining functionality and readability.

  • Error Handling Improvements: Enhanced error handling and logging in TaskAgentService and ContentSafetyMiddleware, providing better debugging capabilities and more resilient error recovery.

  • Chat Controller Robustness: Updated ChatController to handle requests more effectively with improved middleware integration.

  • Thread ID Management: Refined JavaScript handling of thread IDs in chat.js for better response management and state tracking in the UI.

  • Commit Formatting: The release notes generation script now preserves line breaks and indentation in commit bodies, resulting in more readable and well-formatted release notes.

📚 Documentation

  • Release Notes Template: Updated the release notes template with improved clarity and structure, making it easier to generate consistent documentation.

  • README Updates: Enhanced README with conversation persistence details and clarified the role of IThreadPersistenceService in the architecture.

  • Copilot Instructions: Improved GitHub Copilot instructions with body formatting guidelines and file listing best practices for better code generation assistance.

  • Git Commit Guidelines: Strengthened guidelines for generating commit messages to ensure strict adherence to the Conventional Commits specification, including clearer structure examples and detailed explanations.

  • Build Configuration: Added .editorconfig and centralized build configuration files (Directory.Build.props and Directory.Packages.props) to enforce consistent coding styles and simplify package management across the solution.


📊 Statistics

  • Total Commits: 9
  • Contributors: 1
  • Files Changed: Multiple files across all layers
  • New Features: 1
  • Improvements: 3
  • Documentation Updates: 4

👥 Contributors

  • Cristopher Coronado Moreira

📦 Installation

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

# Restore dependencies
dotnet restore

# Build the project
dotnet build

# Run database migrations (if applicable)
dotnet ef database update --project TaskAgent.Infrastructure --startup-project TaskAgent.WebApp