Implementation Roadmap
Relevant source files
The following files were used as context for generating this wiki page:
Introduction
The Horizon Implementation Roadmap outlines the strategic phases and technical milestones required to build a self-hostable Configuration Management Database (CMDB) system. The project follows an "inference-first" strategy, prioritizing AI-powered pattern recognition through remote and CLI-based inference providers to automate IT infrastructure visibility.
The roadmap is structured into granular, PR-sized sub-phases to ensure stability across the primary components: the Rust-based API server (Axum), the lightweight cross-platform agent, and the React-based frontend/desktop application (Tauri).
Sources: IMPLEMENTATION_PLAN.md:14-22, README.md:25-35, IMPLEMENTATION_PLAN.md:1049-1051
Project Foundation and Infrastructure
The initial phase establishes the workspace architecture, development environment, and core utilities. Horizon uses a Rust workspace configuration to manage multiple crates including the API server, agent, and CLI tools.
Core Stack Requirements
| Component | Technology | Version/Requirement |
|---|---|---|
| Programming Language | Rust | 1.94.0-nightly (Minimum) |
| Async Runtime | Tokio | 1.49 |
| Web Framework | Axum | 0.8.8 |
| Database | PostgreSQL | Latest Stable |
| Cache | Redis | Latest Stable |
Sources: Cargo.toml:16-30, IMPLEMENTATION_PLAN.md:46-48, README.md:126-128
Infrastructure Setup Flow
The setup process involves initializing the Docker-based development environment and the database migration runner.
Security Framework and Authentication
Horizon implements a defense-in-depth security model using the RustCrypto stack. Authentication is built on Argon2id hashing, JWT token management with Redis-based blacklisting, and Multi-Factor Authentication (MFA) via TOTP.
Cryptographic Standards
- Password Hashing: Argon2id
- Symmetric Encryption: XChaCha20-Poly1305
- Hashing: BLAKE3
- Signatures: Ed25519
- Key Exchange: X25519
Sources: IMPLEMENTATION_PLAN.md:65-79, Cargo.toml:44-67
Authentication Process
The authentication sequence ensures secure session establishment with support for token refresh and MFA validation.
Asset Inventory and Core Modules
The central feature of Horizon is the Asset Inventory Core, which manages hardware, software, and their relationships.
Implementation Priorities
- Asset Schema: Defining tables for asset types, hierarchy, and custom metadata.
- CRUD API: RESTful endpoints for asset lifecycle management.
- Relationship Mapping: Tracking dependencies with strength levels (strong, medium, weak).
- History Tracking: Automated audit logs for all field-level changes.
Sources: IMPLEMENTATION_PLAN.md:255-296
Data Entity Relationships
Sources: IMPLEMENTATION_PLAN.md:255-274
Agent Architecture
The Horizon agent is designed to be lightweight (<50MB memory) and cross-platform (Linux, Windows, macOS).
Data Collection & Communication
- Platform Detection: Abstraction layers for OS-specific data (dpkg, rpm, brew, winget).
- Inventory Collection: Hardware (CPU, RAM, Disks) and Software (Services, Packages).
- Protocol: Protocol Buffers (prost) for message serialization over mTLS.
- Security: Bidirectional Ed25519 message signing for all reports.
Sources: IMPLEMENTATION_PLAN.md:315-358, Cargo.toml:40-42
Implementation Timeline (Phased Approach)
| Phase | Title | Key Deliverables |
|---|---|---|
| A | Foundation | Docker env, Logging, Migrations, Workspace config |
| B | Authentication | RBAC, Argon2id, JWT, TOTP MFA, API Keys |
| C/P | Frontend & UI | React app, Tauri desktop wrapper, Layouts |
| D/E | Core Assets & Agent | CRUD API, Hardware Discovery, Protobuf comms |
| F/H | Software & Security | License tracking, CVE Sync, CIS Benchmarks |
| N | AI Inference | OpenAI/Anthropic integration, CLI provider fallback |
Sources: IMPLEMENTATION_PLAN.md:129-1033, README.md:223-231
Conclusion
The Horizon Implementation Roadmap provides a rigorous technical path toward a secure, automated CMDB. By leveraging Rust's performance and safety, alongside a modern AI-inference strategy, the system aims to provide comprehensive IT infrastructure visibility while maintaining strict data ownership for self-hosting organizations.
Sources: IMPLEMENTATION_PLAN.md:25-32, IMPLEMENTATION_PLAN.md:1040-1047