Feature Flags Admin Panel Guide
Accessing Feature Flags
- Navigate to admin.asimo.io
- Login with admin credentials
- Go to Settings > Feature Flags
Interface Overview
┌─────────────────────────────────────────────────────────┐
│ Feature Flags [+ New Flag] │
├─────────────────────────────────────────────────────────┤
│ Filter: [All Categories ▼] [Search... ] │
├─────────────────────────────────────────────────────────┤
│ ┌─────────────────────────────────────────────────────┐│
│ │ ui.dark_mode [Toggle] ││
│ │ Enable dark mode theme ││
│ │ Type: boolean | Status: Active | Updated: Dec 04 ││
│ └─────────────────────────────────────────────────────┘│
│ ┌─────────────────────────────────────────────────────┐│
│ │ backend.rag_strategy [Edit] ││
│ │ RAG retrieval strategy selection ││
│ │ Type: string | Value: "hybrid" | Updated: Dec 03 ││
│ └─────────────────────────────────────────────────────┘│
└─────────────────────────────────────────────────────────┘
Common Operations
Toggle a Boolean Flag
- Find the flag in the list
- Click the toggle switch
- Confirm the change
- Change takes effect immediately
Edit a Percentage Flag
- Click Edit on the flag
- Adjust the percentage slider (0-100%)
- Click Save
- New percentage applies to next evaluation
Create a New Flag
- Click + New Flag
- Select category from dropdown
- Enter flag name (snake_case)
- Choose type (boolean/percentage/variant/scheduled)
- Set default value
- Add description
- Click Create
Filter and Search
- Category filter: Show only
ui,backend, etc. - Search: Filter by name or description
- Status filter: Active, deprecated, disabled
Real-Time Updates
The Admin Panel uses Server-Sent Events (SSE) for real-time flag updates:
- Changes by other admins appear immediately
- No page refresh needed
- Connection status shown in header
Scheduled Variant Changes
The Scheduled Changes feature allows you to schedule variant weight modifications for a future time. This is useful for:
- Gradual rollouts scheduled for specific times
- Feature releases coordinated with marketing campaigns
- A/B test phase transitions
- Time-zone aware deployments
Accessing Scheduled Changes
- Navigate to Settings > Feature Flags
- Click the Scheduled Changes tab (or click the 📅 badge on a flag with pending changes)
Interface Overview
┌─────────────────────────────────────────────────────────────┐
│ Feature Flags │
├─────────────────────────────────────────────────────────────┤
│ [Feature Flags] [Scheduled Changes (3)] │
├─────────────────────────────────────────────────────────────┤
│ Pending Scheduled Changes [+ New Change] │
├─────────────────────────────────────────────────────────────┤
│ ┌─────────────────────────────────────────────────────────┐│
│ │ ui.new_feature_rollout ││
│ │ Increase variant_a to 50% ││
│ │ Scheduled: Dec 10, 2025 09:00 (America/New_York) ││
│ │ [Preview] [Edit] [Cancel] ││
│ └─────────────────────────────────────────────────────────┘│
└─────────────────────────────────────────────────────────────┘
Creating a Scheduled Change
- Click + New Change or Schedule on a flag
- Select the target flag (if not pre-selected)
- Set the scheduled date and time
- Choose the timezone (IANA identifier, e.g., "America/New_York")
- Configure variant weight changes:
control: 30% → 20% variant_a: 70% → 80% - Add an optional description
- Click Schedule Change
Previewing Changes
Before a scheduled change is applied, you can preview its effect:
- Click Preview on a scheduled change
- View the before/after comparison:
- Current variant weights
- New variant weights after change
- Affected user percentage
Managing Scheduled Changes
Edit a Pending Change
- Click Edit on the scheduled change
- Modify time, timezone, or variant weights
- Click Save Changes
Cancel a Scheduled Change
- Click Cancel on the scheduled change
- Confirm the cancellation
- The change is marked as cancelled (kept for audit)
Delete a Scheduled Change
- Click the delete icon (requires admin role)
- Confirm permanent deletion
- The change is removed from the system
Timezone Handling
- All times are stored in UTC internally
- Display time uses the selected timezone
- DST transitions are handled automatically
- Common timezones: UTC, America/New_York, America/Los_Angeles, Europe/London
Pending Changes Indicator
Flags with pending scheduled changes show a badge:
- 📅 badge appears next to the flag name
- Badge count shows number of pending changes
- Click the badge to jump to Scheduled Changes tab
RBAC Permissions
| Action | Admin | Viewer |
|---|---|---|
| List scheduled changes | ✅ | ✅ |
| Preview changes | ✅ | ✅ |
| Create scheduled change | ✅ | ❌ |
| Update scheduled change | ✅ | ❌ |
| Cancel scheduled change | ✅ | ❌ |
| Delete scheduled change | ✅ | ❌ |
Monitoring
Prometheus metrics for scheduled changes:
voiceassist_flag_scheduled_changes_total{status}- Counter for applied/cancelled/skipped changesvoiceassist_flag_scheduled_changes_pending- Gauge for pending changes count
Audit Trail
All flag changes are logged:
- Who made the change
- When it occurred
- Previous and new values
- Environment affected
View audit log: Settings > Audit Logs > Filter by "feature_flags"
Related Documentation
- Phase 4: User Overrides - Per-user flag overrides for testing and debugging
- API Reference - REST API endpoints for flag management
- WebSocket API - Real-time event streaming