-
Notifications
You must be signed in to change notification settings - Fork 572
Python: Add Function Approval UI to DevUI #1401
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…ty 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
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds a comprehensive Function Approval UI to DevUI and implements numerous architectural improvements for better performance, security, and developer experience.
Key changes include:
- Implement lazy loading for entity discovery to reduce startup time and memory usage
- Add hot reload capability for development workflow
- Remove remote entity loading capabilities for enhanced security
- Migrate frontend to Zustand for centralized state management
- Add lightweight markdown renderer with code block copy support
Reviewed Changes
Copilot reviewed 35 out of 38 changed files in this pull request and generated 5 comments.
Show a summary per file
File | Description |
---|---|
python/packages/devui/tests/test_execution.py |
Updates test assertions to support "unknown" entity type during discovery phase |
python/packages/devui/tests/test_discovery.py |
Adds comprehensive tests for lazy loading, type detection, and hot reload functionality |
python/packages/devui/frontend/vite.config.ts |
Removes commented build optimization settings |
python/packages/devui/frontend/src/types/openai.ts |
Reorganizes event type definitions and adds turn separator for UI grouping |
python/packages/devui/frontend/src/stores/devuiStore.ts |
Implements centralized Zustand store for unified state management |
python/packages/devui/frontend/src/components/ui/markdown-renderer.tsx |
Adds zero-dependency markdown renderer with code block copy functionality |
python/packages/devui/frontend/src/components/layout/settings-modal.tsx |
Reorders tabs to prioritize Settings over About |
python/packages/devui/frontend/src/components/layout/entity-selector.tsx |
Updates to show lazy loading indicators and removes remote entity management |
python/packages/devui/frontend/src/components/layout/deployment-modal.tsx |
Adds comprehensive deployment guide with Docker and Azure instructions |
python/packages/devui/frontend/src/components/features/agent/agent-view.tsx |
Migrates to Zustand store and adds message copy functionality |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Motivation and Context
Add a helpful UI for function approval flow in DevUI and other fixes
Performance & Architecture:
Security Enhancements:
Frontend Improvements:
Testing & Quality:
Breaking Changes:
Description
Contribution Checklist