- Reduce layout density ~20% (tighter padding, margins, fonts)
- Flatten Agents table view with Client/Site columns (no grouping)
- Add version info to sidebar footer (UI v0.2.0, API v0.1.0)
- Replace Commands nav with sidebar History log
- Add /history page with full command list
- Add /history/:id detail view with output display
- Apply Mission Control styling to all new components
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Overhaul the GuruRMM dashboard with a dark cyberpunk aesthetic featuring
glassmorphism effects, cyan accent lighting, and smooth animations.
Visual Changes:
- Dark theme with CSS variables for consistent theming
- Glassmorphism card effects with colored glow variants
- Grid pattern backgrounds and floating geometric shapes
- JetBrains Mono + Inter font pairing for tech aesthetic
- Cyan, green, amber, and rose accent colors with glow effects
Component Updates:
- index.css: Complete CSS overhaul with utility classes, animations,
and glassmorphism foundations (1300+ lines added)
- Login.tsx: Glassmorphism login card with gradient logo and
floating background shapes
- Layout.tsx: Dark sidebar with cyan nav highlights, grid pattern
main area, animated user profile section
- Dashboard.tsx: Animated stat cards with staggered entrances,
live status indicator with pulse animation, relative timestamps
- Card.tsx: Added glow variants (cyan/green/amber/rose) with
hover lift effects
- Button.tsx: Gradient backgrounds, glow-on-hover, scale animations
- Input.tsx: Dark styling with cyan focus glow, added Textarea component
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Database:
- Add missing indexes for api_key_hash, status, metrics queries
- New migration: 005_add_missing_indexes.sql
Server:
- Fix WebSocket Ping/Pong protocol (RFC 6455 compliance)
- Use separate channel for Pong responses
Agent:
- Replace format!() path construction with PathBuf::join()
- Replace todo!() macros with proper errors for macOS support
Dashboard:
- Fix duplicate filter values in Agents page (__unassigned__ sentinel)
- Add onError handlers to all mutations in Agents, Clients, Sites pages
All changes reviewed and approved.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Completely removed the database context recall system while preserving
database tables for safety. This major cleanup removes 80+ files and
16,831 lines of code.
What was removed:
- API layer: 4 routers (conversation-contexts, context-snippets,
project-states, decision-logs) with 35+ endpoints
- Database models: 5 models (ConversationContext, ContextSnippet,
DecisionLog, ProjectState, ContextTag)
- Services: 4 service layers with business logic
- Schemas: 4 Pydantic schema files
- Claude Code hooks: 13 hook files (user-prompt-submit, task-complete,
sync-contexts, periodic saves)
- Scripts: 15+ scripts (import, migration, testing, tombstone checking)
- Tests: 5 test files (context recall, compression, diagnostics)
- Documentation: 30+ markdown files (guides, architecture, quick starts)
- Utilities: context compression, conversation parsing
Files modified:
- api/main.py: Removed router registrations
- api/models/__init__.py: Removed model imports
- api/schemas/__init__.py: Removed schema imports
- api/services/__init__.py: Removed service imports
- .claude/claude.md: Completely rewritten without context references
Database tables preserved:
- conversation_contexts, context_snippets, context_tags,
project_states, decision_logs (5 orphaned tables remain for safety)
- Migration created but NOT applied: 20260118_172743_remove_context_system.py
- Tables can be dropped later when confirmed not needed
New files added:
- CONTEXT_SYSTEM_REMOVAL_SUMMARY.md: Detailed removal report
- CONTEXT_SYSTEM_REMOVAL_COMPLETE.md: Final status
- CONTEXT_EXPORT_RESULTS.md: Export attempt results
- scripts/export-tombstoned-contexts.py: Export tool for future use
- migrations/versions/20260118_172743_remove_context_system.py
Impact:
- Reduced from 130 to 95 API endpoints
- Reduced from 43 to 38 active database tables
- Removed 16,831 lines of code
- System fully operational without context recall
Reason for removal:
- System was not actively used (no tombstoned contexts found)
- Reduces codebase complexity
- Focuses on core MSP work tracking functionality
- Database preserved for safety (can rollback if needed)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Deployment Summary:
- Server rebuilt and deployed successfully
- JWT_SECRET validation operational (required from environment)
- AGENT_API_KEY validation operational (32+ chars, no weak patterns)
- IP address logging operational (failed connections tracked)
- Token blacklist system deployed (awaiting DB for full testing)
Security Validations Confirmed:
- [✓] Weak API key rejected with clear error message
- [✓] Strong API key accepted and validated
- [✓] Server panics if JWT_SECRET not provided
- [✓] IP addresses logged in connection rejection events
Known Issues:
- Database authentication failure (password incorrect)
- Token revocation endpoints need DB for end-to-end testing
Server Status: ONLINE
Process ID: 3829910
Health Check: http://172.16.3.30:3002/health → OK
Risk Reduction: CRITICAL → LOW (for deployed features)
Next Priority: Fix database credentials for full testing
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>