Commit Graph

2 Commits

  • Python: DevUI Fix Serialization, Timestamp and Other Issues (#1584)
    * refactor(devui): adopt standard OpenAI lifecycle events for agents and workflows
    
    - Replace custom workflow events with OpenAI Responses API standard lifecycle events
    - Add AgentStartedEvent, AgentCompletedEvent, AgentFailedEvent for clean separation
    - Implement ExecutorActionItem for workflow executor tracking
    - Convert informational events to trace events to reduce noise
    - Update README mapper table with comprehensive event mappings
    - Maintain full backward compatibility with legacy events
    
    * fix(devui): resolve timestamp overwriting and Content serialization errors
    
    - Fix tool call timestamps being overwritten on each render (#1483)
    - Add recursive Content serialization to handle ChatMessage and nested objects (#1548)
    - Implement proper MCP tool cleanup on server shutdown
    - Add timestamp field to function_result.complete events
    - Enhance credential and client resource cleanup
    
    Fixes #1483, #1548
    Partial improvements for #1476
  • Python: Add Function Approval UI to DevUI (#1401)
    * ensure function aproval is parsed correctly
    
    * udpate ui, add deployment guide button, other debug panel fixes
    
    * feat(devui): Implement lazy loading architecture with enhanced security and state management
    
    Major architectural improvements to DevUI for better performance, security, and developer experience:
    
    Performance & Architecture:
    - Implement lazy loading for entity discovery - entities loaded on-demand instead of at startup
    - Add hot reload capability for development workflow via new reload endpoint
    - Reduce startup time and memory footprint by deferring module imports
    
    Security Enhancements:
    - Remove remote entity loading capabilities (POST /v1/entities/add, DELETE endpoints)
    - DevUI now strictly local development tool - no remote code execution
    - Add explicit security documentation and best practices in README
    
    Frontend Improvements:
    - Migrate to Zustand for centralized state management (replacing prop drilling)
    - Add lightweight zero-dependency markdown renderer with code block copy support
    - Improve gallery UX with setup instructions modal instead of direct URL loading
    - Enhanced message UI with copy functionality and better token usage display
    
    Testing & Quality:
    - Expand test coverage for lazy loading, type detection, and cache invalidation
    - Add comprehensive tests for new behaviors (+231 lines of test code)
    - Improve type safety and documentation throughout
    
    Breaking Changes:
    - Remote entity loading via URLs is no longer supported
    - Entities must be loaded from local filesystem only
    
    * update ui issues, uupdate test descripion