Add a function to deep merge two dictionaries, allowing src values to overwrite or merge into dst. Update key handling in normalize_dotted_keys to improve logging and handling of empty keys.
- Added a new auth module to manage authentication-related functions.
- Updated existing routes in expression_routes, person_routes, plugin_routes, and routes to utilize the new authentication methods.
- Implemented CORS middleware in webui_server for development environment support.
- Introduced functions to set and clear authentication cookies.
- Enhanced token verification to prioritize Cookie over Header for improved security and flexibility.
- Implemented a WebSocket endpoint for broadcasting plugin loading progress.
- Created functions to update and broadcast progress status to connected clients.
- Integrated progress updates into plugin management routes for operations like fetching, cloning, installing, uninstalling, and updating plugins.
- Added error handling and logging for progress updates and WebSocket connections.