# Veza Project Blueprint & Stabilization Plan

## Current Status (2025-01-27)

**Slogan:** "Une fondation prometteuse minée par l'instabilité."

### Component Status
- **Backend (Go)**: ✅ Stable (92% test coverage).
- **Chat Server (Rust)**: ⚠️ Fragile (Race conditions, poor error handling).
- **Stream Server (Rust)**: 🚧 Skeleton / Work in Progress.
- **Frontend (React)**: ❌ Broken / Blocking (TypeScript errors).
- **Infrastructure**: 🌀 Chaotic (Too many scripts, no central entry point).
- **Common Code**: 💔 Duplicated (`veza-common` vs `veza-rust-common`).

## Stabilization Strategy
**Principle:** Stabilization before Evolution.

### Phase 0: Preparation and Standardization (1-2 days)
- **Goal:** Simplify usages and remove technical debt.
- [ ] Unify Rust common crates (`veza-rust-common` into `veza-common`).
- [ ] Centralize commands via `Makefile` (install, start, test, lint).

### Phase 1: Make Project Usable (Frontend Focus - 3-5 days)
- **Goal:** Working web app connected to Go API.
- [ ] Fix TypeScript compilation errors.
- [ ] Pass basic UI unit tests.
- [ ] Connect Login/Register to Go API.

### Phase 2: Core Services Reliability (Rust Focus - 1-2 weeks)
- **Goal:** Robust Rust services.
- [ ] Fix Chat server race conditions & error handling.
- [ ] Complete Stream server implementation & tests.

### Phase 3: Controlled Evolution
- **Goal:** New features on stable base.
- [ ] New Go API routes.
- [ ] Expose Rust features via Gateway.
- [ ] Frontend integration of new features.
