v0.5.0 Release Notes - nself-org/nchat GitHub Wiki
Release Notes - v0.5.0
Enhanced Admin Dashboard with Bulk Operations & Automation
Release Date: January 30, 2026 Type: Major Feature Release Focus: Enterprise Administration & Automation
Overview
Version 0.5.0 introduces powerful administrative capabilities designed for enterprise deployments, featuring bulk operations, automation workflows, real-time system monitoring, and enhanced audit logging.
What's New
1. Bulk Operations Suite
Perform administrative actions on multiple entities simultaneously with comprehensive progress tracking and error handling.
User Operations
- Bulk Invite: Send invitations to multiple users via email with role assignment
- Bulk Suspend: Temporarily or permanently suspend user accounts
- Bulk Delete: Remove multiple user accounts with safety confirmations
- Bulk Role Assignment: Update roles for multiple users at once
- CSV Import/Export: Import user data from CSV and export for backup
Channel Operations
- Bulk Archive: Archive multiple inactive channels
- Bulk Delete: Remove multiple channels with message archiving option
- Bulk Transfer: Transfer ownership of multiple channels
- Bulk Privacy Change: Convert channels between public and private
- CSV Export: Export channel data for analysis
Features:
- Real-time progress tracking with success/failure counts
- Detailed error reporting for failed operations
- Email validation and parsing
- Safety confirmations for destructive actions
- Operation history and audit trail
2. Automation Engine
Schedule and automate administrative tasks with a powerful rule-based system.
Automation Capabilities
- Scheduled Triggers: Cron-based scheduling for recurring tasks
- Event Triggers: React to system events (user creation, channel activity)
- Time-based Triggers: Act on inactivity or age thresholds
- Multiple Actions: Archive, delete, notify, generate reports
- Conditional Execution: Filter with custom conditions
Pre-built Templates
- Archive inactive channels (90 days)
- Delete old messages (retention policy)
- Auto-assign roles to new users
- Send welcome emails
- Generate weekly activity reports
- Suspend inactive user accounts
Features:
- Visual rule builder with templates
- Execution history with detailed logs
- Manual trigger option for testing
- Rule duplication for quick setup
- Success rate tracking
- Pause/resume functionality
3. System Health Monitoring
Real-time monitoring dashboard for system resources and service health.
Resource Monitoring
- CPU Usage: Real-time usage, core count, load averages
- Memory Usage: Total, used, free memory with trends
- Disk Usage: Storage usage with health status indicators
- Network Metrics: Bytes in/out, active connections
Service Health
- PostgreSQL database status
- Hasura GraphQL API health
- Authentication service monitoring
- Storage (MinIO) health
- Redis cache status
- MeiliSearch search engine
Advanced Features
- Live Charts: 20-minute rolling window with auto-refresh
- Database Metrics: Connection count, queries/sec, avg query time
- Health Indicators: Color-coded status (healthy/degraded/down)
- Uptime Tracking: Service uptime duration
- Response Time: Service response time monitoring
4. Enhanced Audit Logs
Comprehensive audit trail with advanced search, filtering, and export capabilities.
Event Tracking
- User events (login, creation, suspension, role changes)
- Channel events (creation, deletion, archiving)
- Message events (posting, editing, flagging, deletion)
- System events (settings changes, automation execution)
- Bulk operation tracking
Advanced Features
- Multi-criteria Search: Search across descriptions, actors, event types
- Advanced Filtering: Event type, severity, actor, date range
- Severity Levels: Info, warning, error, critical with color coding
- Detailed Inspection: Full event details with metadata
- CSV/JSON Export: Export filtered logs for compliance
- Technical Details: IP addresses, user agents, session IDs
Compliance Features
- Retention policy management
- Automatic log cleanup
- Export before deletion
- Audit trail integrity
5. New Admin Dashboard Page
Unified interface for all advanced administrative features.
Location: /admin/advanced
Sections:
- Bulk user operations with selection management
- Bulk channel operations
- Automation rules management
- System health monitoring
- Enhanced audit log viewer
Features:
- Tabbed interface for easy navigation
- Quick stats dashboard
- Feature highlights and documentation links
- Responsive design for mobile/tablet
Technical Details
New Components
Bulk Operations (src/components/admin/bulk/):
BulkUserOperations.tsx- User bulk operations UIBulkChannelOperations.tsx- Channel bulk operations UI
Automation (src/lib/automation/):
automation-engine.ts- Rule engine and executorautomation-store.ts- State managementAutomationManager.tsx- Management UI
Monitoring (src/components/admin/monitoring/):
SystemHealthDashboard.tsx- Real-time monitoring
Audit (src/components/admin/audit/):
EnhancedAuditLog.tsx- Advanced audit log viewer
Library (src/lib/admin/):
bulk-operations.ts- Bulk operation utilities and types
API Endpoints
New Routes:
POST /api/admin/bulk-operations- Execute bulk operations- Supports: user invite, suspend, delete, role assign
- Supports: channel archive, delete, transfer, privacy change
- Supports: message delete, flag
Database Schema
New Tables:
automation_rules- Automation rule definitionsautomation_executions- Execution historybulk_operations- Bulk operation trackingaudit_log- Enhanced audit trail
Migration File: .backend/migrations/automation_and_bulk_ops.sql
Dependencies
No new external dependencies required. Uses existing:
recharts(already installed) - Charts and visualizationsdate-fns- Date formattingzustand- State management
Usage
Accessing Advanced Features
- Navigate to
/admin/advanced(requires Admin or Owner role) - Choose from tabs: Bulk Users, Bulk Channels, Automation, Monitoring, Audit Log
- Follow in-UI guides for each feature
Creating Automation Rules
// Example: Archive inactive channels weekly
{
name: 'Archive Inactive Channels',
trigger: 'schedule',
triggerConfig: {
schedule: { cron: '0 0 * * 0' }, // Sunday midnight
inactivityDays: 90
},
action: 'channel.archive',
actionConfig: {
archiveChannel: {
reason: 'Inactive for 90 days',
notifyMembers: true
}
}
}
Performing Bulk Operations
- Select Items: Choose users/channels from management table
- Choose Operation: Navigate to appropriate bulk operation tab
- Configure: Set parameters (reason, duration, notifications)
- Confirm: Review and confirm the operation
- Monitor: Watch progress tracker for real-time updates
Exporting Audit Logs
- Navigate to Audit Log tab
- Apply filters (date range, event type, severity, actor)
- Click "Export CSV" or "Export JSON"
- File downloads with filtered events
Migration Guide
From v0.4.0
-
Run Database Migration:
cd .backend nself db migrate up -
Update Environment (if needed): No new environment variables required.
-
Rebuild Application:
pnpm build -
Update Navigation: Admin sidebar now includes "Advanced" menu item
Database Migration
The migration adds:
- 4 new tables for automation, bulk ops, and audit logging
- Indexes for efficient querying
- Helper functions for automation scheduling
- Audit log creation helper
Migration is backward compatible - existing data is not affected.
Performance Considerations
Bulk Operations
- Operations are batched to avoid overwhelming the system
- Default batch size: 50 items
- Configurable delays between batches
- Progress tracking updates every batch
Automation
- Rules run in background jobs (future: queue system)
- Execution logs capped at 100 entries per rule
- Automatic cleanup of old executions (future feature)
Monitoring
- Auto-refresh every 5 seconds (when enabled)
- Efficient time-series data (20 data points)
- Minimal database queries with caching
Audit Logs
- Indexed for fast queries
- GIN index on metadata for JSON search
- Configurable retention policies
- Export limits: 10,000 events per file
Security Enhancements
- Role-Based Access: All features require Admin or Owner role
- Audit Trail: All administrative actions logged
- Confirmation Dialogs: Double confirmation for destructive actions
- IP Tracking: Audit logs include IP addresses
- Session Tracking: All events linked to user sessions
Known Limitations
-
Automation Scheduling: Currently uses simple daily/weekly schedules
- Future: Integration with pg_cron or external scheduler
- Workaround: Use manual trigger for complex schedules
-
Bulk Operation Size: Recommended maximum 1,000 items per operation
- Larger operations should be split into multiple batches
-
Real-time Metrics: Monitoring data is simulated in current version
- Future: Integration with actual system metrics
- Production: Connect to Prometheus/monitoring stack
-
CSV Import: Basic validation only
- Future: Advanced validation and error recovery
- Workaround: Pre-validate CSV files before import
Roadmap
v0.5.1 (Planned)
- Advanced cron expression builder UI
- Bulk operation queuing system
- Real system metrics integration
- Automation rule templates marketplace
v0.6.0 (Planned)
- Webhook integration for automation
- Advanced reporting with scheduled delivery
- Custom dashboard widgets
- Mobile app for monitoring
Documentation
- Full Feature Guide:
docs/Admin-Advanced-Features.md - API Reference: Included in feature guide
- Best Practices: See feature guide, section 7
- Troubleshooting: See feature guide, section 8
Breaking Changes
None. This is a purely additive release.
Contributors
- Enhanced admin features designed and implemented for enterprise deployments
- Built on the solid foundation of nself CLI v0.4.2
- Community feedback incorporated from v0.4.0 release
Upgrade Checklist
- [ ] Backup database before migration
- [ ] Run database migration script
- [ ] Test bulk operations on staging environment
- [ ] Configure automation rules as needed
- [ ] Set up audit log retention policies
- [ ] Review system monitoring dashboards
- [ ] Update team documentation
- [ ] Train administrators on new features
Support
For issues or questions:
- GitHub Issues: [Report bugs or request features]
- Documentation:
/docs/Admin-Advanced-Features.md - Admin Dashboard:
/admin/advanced
Thank you for using nself-chat!
Enterprise-grade communication, powered by nself CLI.