Skip to content

Conversation

@DJJones66
Copy link
Contributor

@DJJones66 DJJones66 commented May 27, 2025

Summary

This update introduces the General Settings module and a foundational self-updating system for user settings. These changes improve the flexibility, reliability, and user experience of the BrainDriveSettings plugin.


🚀 Highlights

General Settings Module

  • 🛠️ Implemented a new General Settings module for centralized control.
  • 📦 Added database migrations and models to support general settings storage and retrieval.

User Settings Updater & Migration

  • 🔄 Developed a robust user updater for managing general settings per user.
  • 🧠 Introduced versioning logic, with current migration target: v0.2.0.
  • 🧪 Improved error handling, transactional integrity, and logging during migrations.

Frontend Integration

  • 💡 Integrated logic to apply and persist user’s default page setting.
  • 🎯 Set "AI Chat" as the default landing page to improve onboarding and usability.

Testing & Refactoring

  • ✅ Created and updated unit tests for the updater and migration logic.
  • 🧹 Refactored plugin code for clarity, maintainability, and consistency.

Documentation & Cleanup

  • 📚 Updated documentation to reflect new features and migration steps.
  • 🗑️ Removed deprecated code and performed general cleanup across the plugin.

✅ v0.2 – Self-Updating System Goals

Feature Status Notes
Tracks and handles version updates ✔️ Stable
Database migrations run automatically ✔️ Integrated with Alembic
Per-user version tracking and updating ✔️ Fully multi-user aware
No data loss during updates ✔️ Safe transactional logic

This PR lays the groundwork for future plugin updates with confidence, ensuring backward compatibility and a seamless user experience.


🔧 Fixes

Closes #5
Closes #8

@DJJones66 DJJones66 self-assigned this May 27, 2025
@DJJones66 DJJones66 merged commit 1d7b3ea into main May 27, 2025
howl0893 pushed a commit to howl0893/BrainDrive that referenced this pull request Jun 9, 2025
v0.2.0 Release – Adds General Settings module, frontend default page logic, and self-updating system for user settings. Closes BrainDriveAI#5 and BrainDriveAI#8.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Login - Redesign Streaming mode selected before the first prompt causes history to not set

2 participants