v2.76.0
4 days ago by Jordan Fanapour
New Features
- Flow Agent Type: Introduced deterministic workflow system with graph-based step definitions, enabling visual flow creation and execution through directed graphs with conditional paths
- SafeExpressionEvaluator: Added secure expression evaluation system for conditional logic without arbitrary code execution, supporting dot notation and common comparison operations
- AI Agent Visualization: New visualization tab in AI Agent Run forms with Rete.js flow diagrams for real-time execution tracking
- Query Hierarchical Categories: CategoryPath support allows filesystem-like paths (e.g., "/MJ/AI/Agents/") for walking through QueryCategory parent-child relationships
- Flow Step Management: New AIAgentStep and AIAgentStepPath database tables for defining workflow nodes and edges with timeout, retry, and error handling capabilities
Improvements
- GraphQL SystemUserClient: Refactored method names removing redundant "SystemUser" suffix and added DeleteQuery method with optional parameters for better usability
- AI Agent Run Analytics: Enhanced analytics components with better data service architecture and step detail visualization
- Action Output Parameters: Core Actions now include proper output parameter definitions for better integration with workflow systems
- React Component Integration: Improved MJ React component handling with better Angular adapter services and script loading
- Query Performance: Enhanced RunQuery and QueryEntity server implementations with better error handling and optimization
Bug Fixes
- Query Entity Transactions: Temporarily removed problematic transaction logic from query entity server to resolve stability issues
- Angular Change Detection: Fixed ExpressionChangedAfterItHasBeenCheckedError issues in various form components
- Parameter Type Safety: Corrected GraphQL parameter types for better type safety (Int vs Float handling)
- Context Management: Improved AI agent flow context management with case-insensitive output mapping
- Form Validation: Enhanced form validation and error handling across entity forms