Files
hive/backend/migrations
anthonyrawlins c90d98dac3 Add comprehensive database rebuild capability with complete unified schema
Features:
- Complete SQL schema file (000_complete_schema.sql) for full database rebuild
- Unified authentication system with UUID-based users, API keys, refresh tokens
- All platform tables: users, agents, workflows, tasks, executions, metrics, alerts
- Comprehensive indexing strategy for performance optimization
- Automated rebuild scripts (Python and Shell) with Docker integration
- Detailed documentation with usage instructions and troubleshooting

Schema capabilities:
 UUID-based design for scalability and consistency
 Complete authentication: JWT, API keys, password hashing, token blacklisting
 Agent management: Ollama and CLI agents with performance metrics
 Workflow orchestration: n8n integration with execution tracking
 Task management: Priority-based assignment and status tracking
 Monitoring: System alerts, performance metrics, health checks
 Default users: admin and developer accounts for immediate access

This provides a single-command database rebuild capability that creates
the complete Hive platform schema from scratch, resolving all previous
schema conflicts and providing a clean foundation for authentication
and full platform functionality.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-11 08:35:37 +10:00
..

Hive Database Schema Management

This directory contains database schema files and migration scripts for the Hive platform.

Files Overview

Schema Files

  • 000_complete_schema.sql - Complete database schema from scratch
  • 001_initial_schema.sql - Original initial schema (legacy)
  • 002_add_auth_fields.sql - Migration to add authentication fields (legacy)

Scripts

  • ../scripts/rebuild_database.sh - Shell script to rebuild database using Docker
  • ../scripts/rebuild_database.py - Python script to rebuild database

Complete Database Rebuild

The 000_complete_schema.sql file contains the complete, unified database schema that includes:

Unified User Management

  • UUID-based user IDs
  • Complete authentication fields (username, email, passwords)
  • User roles and permissions (is_active, is_superuser, is_verified)
  • Backward compatibility fields (role, full_name)

Authentication System

  • API keys with scoped permissions
  • JWT refresh tokens with device tracking
  • Token blacklisting for security
  • Comprehensive usage tracking

Agent Management

  • AI agent registration and configuration
  • Performance metrics and monitoring
  • Support for both Ollama and CLI agents

Workflow & Task Management

  • Workflow definitions with n8n integration
  • Execution tracking and monitoring
  • Task assignment and status management

Monitoring & Alerting

  • System alerts and notifications
  • Performance metrics collection
  • Agent health monitoring

Usage

# From the backend directory
cd /path/to/hive/backend
./scripts/rebuild_database.sh

This script:

  • Connects to the PostgreSQL service in Docker swarm
  • Executes the complete schema rebuild
  • Verifies the installation
  • Shows initial user credentials

Option 2: Python Script

# Set environment variables if needed
export DB_HOST=localhost
export DB_PORT=5432
export DB_NAME=hive
export DB_USER=postgres
export DB_PASSWORD=hive123

# Run the Python script
python scripts/rebuild_database.py

Option 3: Manual SQL Execution

# Connect to PostgreSQL and execute directly
psql -h localhost -U postgres -d hive -f migrations/000_complete_schema.sql

Default Users

After rebuild, the database will contain:

Email Username Password Role Permissions
admin@hive.local admin admin123 admin Superuser, Active, Verified
developer@hive.local developer dev123 developer Active, Verified

⚠️ SECURITY: Change these default passwords immediately in production!

Schema Features

UUID-based Design

  • All primary entities use UUIDs for better scalability
  • Consistent identification across distributed systems
  • No integer ID conflicts in multi-node deployments

Complete Authentication

  • Password hashing with bcrypt
  • API key generation with prefixes (hive_xxx)
  • JWT token management with refresh and blacklisting
  • Scoped permissions for fine-grained access control

Performance Optimized

  • Comprehensive indexing strategy
  • Efficient queries for common operations
  • Time-series optimization for metrics
  • Proper foreign key relationships

Monitoring Ready

  • Built-in metrics collection
  • Alert management system
  • Agent performance tracking
  • Execution monitoring

Migration from Legacy Schema

If you have an existing database with the old schema, the complete rebuild will:

  1. Drop existing tables (⚠️ DATA LOSS)
  2. Create unified schema with all new features
  3. Insert default users for immediate access

For production systems with existing data, consider:

  • Creating a backup before rebuild
  • Developing custom migration scripts
  • Using the incremental migration files instead

Troubleshooting

Connection Issues

  • Ensure PostgreSQL service is running
  • Check network connectivity to database
  • Verify credentials and database name

Permission Errors

  • Ensure user has CREATE/DROP privileges
  • Check database ownership
  • Verify network policies allow connections

Schema Conflicts

  • Use complete rebuild for clean installation
  • Check for existing databases/schemas
  • Ensure proper cleanup of old installations

Next Steps

After successful database rebuild:

  1. Change default passwords
  2. Configure authentication settings
  3. Register AI agents
  4. Create initial workflows
  5. Set up monitoring dashboards

The unified schema provides a solid foundation for the complete Hive platform with authentication, agent management, and workflow orchestration.