## AI Copilot Module System
- Add copilot_enabled flag to businesses table
- Add Copilot Module toggle in Filament admin (Premium Features)
- Gate all Copilot buttons with copilot_enabled check
- Enable by default for Cannabrands only
## AI Settings Multi-Provider Support
- Support 5 AI providers: Anthropic, OpenAI, Perplexity, Canva, Jasper
- Separate encrypted API keys per provider
- Model dropdowns populated from config/ai.php
- Test Connection feature with real API validation
- Existing Connections summary shows status for all providers
- Provider-specific settings only shown when provider selected
## Brand-Scoped Campaign System
- Add brand_id to broadcasts table
- Brand selector component (reusable across forms)
- Campaign create/edit requires brand selection
- All campaigns now scoped to specific brand
## Documentation (9 New Files)
- docs/modules.md - Module system architecture
- docs/messaging.md - Messaging and conversation system
- docs/copilot.md - AI Copilot features and configuration
- docs/segmentation.md - Buyer segmentation system
- docs/sendportal.md - SendPortal multi-brand integration
- docs/campaigns.md - Campaign creation and delivery flow
- docs/conversations.md - Conversation lifecycle and threading
- docs/brand-settings.md - Brand configuration and voice system
- docs/architecture.md - High-level system overview
## Bug Fixes
- Remove duplicate FailedJobResource (Horizon already provides this at /horizon/failed)
- Fix missing Action import in Filament resources
- Update brand policy for proper access control
## Database Migrations
- 2025_11_23_175211_add_copilot_enabled_to_businesses_table.php
- 2025_11_23_180000_add_brand_id_to_broadcasts_table.php
- 2025_11_23_180326_update_ai_settings_for_multiple_providers.php
- 2025_11_23_184331_add_new_ai_providers_to_ai_settings.php
## Notes
- Pint: ✅ Passed (all code style checks)
- Tests: Failing due to pre-existing database schema dump conflicts (not related to these changes)
- Schema issue needs separate fix: pgsql-schema.sql contains tables that migrations also create
39 lines
793 B
PHP
39 lines
793 B
PHP
<?php
|
|
|
|
return [
|
|
'providers' => [
|
|
'anthropic' => [
|
|
'models' => [
|
|
'claude-3.5-sonnet',
|
|
'claude-3-opus',
|
|
],
|
|
],
|
|
'openai' => [
|
|
'models' => [
|
|
'gpt-5.1',
|
|
'gpt-5.0',
|
|
'gpt-4.1',
|
|
'gpt-4.1-mini',
|
|
],
|
|
],
|
|
'perplexity' => [
|
|
'models' => [
|
|
'sonar-large',
|
|
'sonar-medium',
|
|
'sonar-small',
|
|
],
|
|
],
|
|
'canva' => [
|
|
'models' => [
|
|
'canva-v1',
|
|
],
|
|
],
|
|
'jasper' => [
|
|
'models' => [
|
|
'jasper-pro',
|
|
'jasper-standard',
|
|
],
|
|
],
|
|
],
|
|
];
|