discourse-ai/spec/system/ai_bot
Sam 8b1b6811f4
FEATURE: add support for uploads when starting a convo (#1301)
This commit introduces file upload capabilities to the AI Bot conversations interface and improves the overall dedicated UX experience. It also changes the experimental setting to a more permanent one.

## Key changes:

- **File upload support**:
  - Integrates UppyUpload for handling file uploads in conversations
  - Adds UI for uploading, displaying, and managing attachments
  - Supports drag & drop, clipboard paste, and manual file selection
  - Shows upload progress indicators for in-progress uploads
  - Appends uploaded file markdown to message content

- **Renamed setting**:
  - Changed `ai_enable_experimental_bot_ux` to `ai_bot_enable_dedicated_ux`
  - Updated setting description to be clearer
  - Changed default value to `true` as this is now a stable feature
  - Added migration to handle the setting name change in database

- **UI improvements**:
  - Enhanced input area with better focus states
  - Improved layout and styling for conversations page
  - Added visual feedback for upload states
  - Better error handling for uploads in progress

- **Code organization**:
  - Refactored message submission logic to handle attachments
  - Updated DOM element IDs for consistency
  - Fixed focus management after submission

- **Added tests**:
  - Tests for file upload functionality
  - Tests for removing uploads before submission
  - Updated existing tests to work with the renamed setting


---------

Co-authored-by: awesomerobot <kris.aubuchon@discourse.org>
2025-05-01 12:21:07 +10:00
..
ai_bot_helper_spec.rb FEATURE: add support for uploads when starting a convo (#1301) 2025-05-01 12:21:07 +10:00
ai_share_conversation_spec.rb DEV: Rewire AI bot internals to use LlmModel (#638) 2024-06-18 14:32:14 -03:00
homepage_spec.rb FEATURE: add support for uploads when starting a convo (#1301) 2025-05-01 12:21:07 +10:00
persona_spec.rb REFACTOR: Move personas into its own module. (#1233) 2025-03-31 14:42:33 -03:00
share_spec.rb DEV: Drop widget post-menu spec (#1236) 2025-04-01 15:41:56 +01:00
tool_spec.rb DEV: invalid selector (#1286) 2025-04-25 16:56:09 +02:00