Skip to content

Commit bceeaee

Browse files
starbopsclaude
andcommitted
docs: update docs to reflect current impl and roadmap [skip ci]
- Remove architecture section from README.md and replace with system architecture diagram - Update README.md with comprehensive API endpoint list (16+ endpoints) - Add current features vs roadmap phases with clear status indicators - Update CLAUDE.md project overview to reflect Epic 1 completion status - Mark implemented vs planned components in project structure - Update development commands to match current Makefile targets - Add Epic development roadmap with clear milestones - Preserve future vision while being honest about current implementation 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
1 parent d2ffe9a commit bceeaee

File tree

2 files changed

+233
-95
lines changed

2 files changed

+233
-95
lines changed

CLAUDE.md

Lines changed: 98 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,21 @@ This document defines code style guidelines, review criteria, project-specific r
44

55
## Project Overview
66

7-
VoidRunner is a Kubernetes-based distributed task execution platform built with:
8-
9-
- **Backend**: Go + Gin framework + PostgreSQL + Redis
10-
- **Frontend**: Svelte + SvelteKit + TypeScript
11-
- **Infrastructure**: Kubernetes (GKE) + Docker + gVisor
12-
- **Architecture**: Microservices with container-based task execution
7+
VoidRunner is a distributed task execution platform designed for secure, scalable code execution. The project follows an incremental development approach through well-defined Epic milestones.
8+
9+
### Current Implementation Status (Epic 1 ✅ Complete)
10+
- **Backend**: Go + Gin framework + PostgreSQL (pgx driver)
11+
- **API**: RESTful API with JWT authentication and comprehensive task management
12+
- **Database**: PostgreSQL with optimized schema and cursor pagination
13+
- **Testing**: 80%+ code coverage with unit and integration tests
14+
- **Documentation**: OpenAPI/Swagger specs with comprehensive examples
15+
16+
### Planned Architecture (Epic 2-4 📋 Roadmap)
17+
- **Container Execution**: Docker + gVisor security for safe code execution
18+
- **Frontend**: Svelte + SvelteKit + TypeScript web interface
19+
- **Infrastructure**: Kubernetes (GKE) deployment with microservices
20+
- **Queue System**: Redis for task scheduling and real-time updates
21+
- **Monitoring**: Real-time metrics, logging, and alerting systems
1322

1423
## Go Code Standards
1524

@@ -18,28 +27,60 @@ VoidRunner is a Kubernetes-based distributed task execution platform built with:
1827
```
1928
voidrunner/
2029
├── cmd/ # Application entrypoints
21-
│ ├── api/ # API server main
22-
│ ├── scheduler/ # Task scheduler main
23-
│ └── executor/ # Task executor main
30+
│ ├── api/ # ✅ API server main (implemented)
31+
│ ├── migrate/ # ✅ Database migration tool (implemented)
32+
│ ├── scheduler/ # 📋 Task scheduler main (planned - Epic 2)
33+
│ └── executor/ # 📋 Task executor main (planned - Epic 2)
2434
├── internal/ # Private application code
25-
│ ├── api/ # API handlers and routes
26-
│ ├── auth/ # Authentication logic
27-
│ ├── config/ # Configuration management
28-
│ ├── database/ # Database layer
29-
│ ├── executor/ # Task execution engine
30-
│ ├── models/ # Data models
31-
│ ├── queue/ # Message queue integration
32-
│ └── security/ # Security utilities
35+
│ ├── api/ # ✅ API handlers and routes (implemented)
36+
│ ├── auth/ # ✅ Authentication logic (implemented)
37+
│ ├── config/ # ✅ Configuration management (implemented)
38+
│ ├── database/ # ✅ Database layer (implemented)
39+
│ ├── models/ # ✅ Data models (implemented)
40+
│ ├── services/ # ✅ Business logic services (implemented)
41+
│ ├── executor/ # 📋 Task execution engine (planned - Epic 2)
42+
│ ├── queue/ # 📋 Message queue integration (planned - Epic 2)
43+
│ └── security/ # 📋 Security utilities (planned - Epic 2)
3344
├── pkg/ # Public libraries
34-
│ ├── logger/ # Structured logging
35-
│ ├── metrics/ # Prometheus metrics
36-
│ └── utils/ # Shared utilities
37-
├── api/ # API specifications (OpenAPI)
38-
├── deployments/ # Kubernetes manifests
39-
├── scripts/ # Build and deployment scripts
40-
└── docs/ # Documentation
45+
│ ├── logger/ # ✅ Structured logging (implemented)
46+
│ ├── metrics/ # 📋 Prometheus metrics (planned - Epic 2)
47+
│ └── utils/ # 📋 Shared utilities (planned)
48+
├── api/ # ✅ API specifications (OpenAPI) (implemented)
49+
├── migrations/ # ✅ Database migrations (implemented)
50+
├── tests/ # ✅ Integration tests (implemented)
51+
├── scripts/ # ✅ Build and deployment scripts (implemented)
52+
├── docs/ # ✅ Documentation (implemented)
53+
├── deployments/ # 📋 Kubernetes manifests (planned - Epic 3)
54+
└── frontend/ # 📋 Svelte web interface (planned - Epic 3)
4155
```
4256

57+
#### Epic Development Roadmap
58+
59+
**Epic 1: Core API Infrastructure****Complete**
60+
- JWT authentication system
61+
- Task management CRUD operations
62+
- PostgreSQL database with pgx
63+
- Comprehensive testing suite
64+
- OpenAPI documentation
65+
66+
**Epic 2: Container Execution Engine** 🔄 **In Development**
67+
- Docker client integration with security
68+
- Task execution workflow and state management
69+
- Real-time log collection and streaming
70+
- Error handling and cleanup mechanisms
71+
72+
**Epic 3: Frontend Interface** 📋 **Planned**
73+
- Svelte project setup and architecture
74+
- Authentication UI and user management
75+
- Task creation and management interface
76+
- Real-time task status updates
77+
78+
**Epic 4: Advanced Features** 📋 **Planned**
79+
- Collaborative features and sharing
80+
- Advanced search and filtering
81+
- Real-time dashboard and system metrics
82+
- Advanced notifications and alerting
83+
4384
### Coding Standards
4485

4586
#### 1. Naming Conventions
@@ -630,19 +671,41 @@ make docs-serve # Serve docs locally
630671
# Development tools
631672
make install-tools # Install development tools
632673
make clean # Clean build artifacts
674+
675+
# Database management
676+
make db-start # Start test database (Docker)
677+
make db-stop # Stop test database
678+
make db-reset # Reset test database (clean slate)
679+
680+
# Database migrations
681+
make migrate-up # Run database migrations up
682+
make migrate-down # Run database migrations down (rollback one)
683+
make migrate-reset # Reset database (rollback all migrations)
684+
make migration name=X # Create new migration file
685+
686+
# Dependencies and setup
687+
make deps # Download and tidy dependencies
688+
make deps-update # Update dependencies
689+
make setup # Setup complete development environment
633690
```
634691

635692
### Database Operations
636693

637694
```bash
638-
# Run migrations
639-
./scripts/migrate.sh up
640-
641-
# Create new migration
642-
./scripts/create-migration.sh "add_task_priority_column"
643-
644-
# Backup database
645-
./scripts/backup-db.sh production
695+
# Database management (implemented)
696+
make db-start # Start test database container
697+
make db-stop # Stop test database container
698+
make db-reset # Reset test database to clean state
699+
700+
# Migration management (implemented)
701+
make migrate-up # Apply all pending migrations
702+
make migrate-down # Rollback last migration
703+
make migrate-reset # Rollback all migrations
704+
make migration name=add_feature # Create new migration files
705+
706+
# Legacy scripts (planned for Epic 2)
707+
./scripts/backup-db.sh production # Database backup utility
708+
./scripts/restore-db.sh backup.sql # Database restore utility
646709
```
647710

648711
## Documentation Standards
@@ -691,8 +754,8 @@ type TaskExecutor interface {
691754

692755
---
693756

694-
**Document Version**: 1.0
695-
**Last Updated**: 2025-07-04
696-
**Next Review**: 2025-08-01
757+
**Document Version**: 1.1
758+
**Last Updated**: 2025-07-10
759+
**Next Review**: 2025-08-10
697760

698761
For questions about these guidelines, please reach out to the technical lead or create an issue in the repository.

0 commit comments

Comments
 (0)