docs: add pre-merge checklist and remove SWARM_CONFIG.md
This commit is contained in:
@@ -1,114 +0,0 @@
|
|||||||
# WiFi-DensePose Rust Port - 15-Agent Swarm Configuration
|
|
||||||
|
|
||||||
## Mission Statement
|
|
||||||
Port the WiFi-DensePose Python system to Rust using ruvnet/ruvector patterns, with modular crates, WASM support, and comprehensive documentation following ADR/DDD principles.
|
|
||||||
|
|
||||||
## Agent Swarm Architecture
|
|
||||||
|
|
||||||
### Tier 1: Orchestration (1 Agent)
|
|
||||||
1. **Orchestrator Agent** - Coordinates all agents, manages dependencies, tracks progress
|
|
||||||
|
|
||||||
### Tier 2: Architecture & Documentation (3 Agents)
|
|
||||||
2. **ADR Agent** - Creates Architecture Decision Records for all major decisions
|
|
||||||
3. **DDD Agent** - Designs Domain-Driven Design models and bounded contexts
|
|
||||||
4. **Documentation Agent** - Maintains comprehensive documentation, README, API docs
|
|
||||||
|
|
||||||
### Tier 3: Core Implementation (5 Agents)
|
|
||||||
5. **Signal Processing Agent** - Ports CSI processing, phase sanitization, FFT algorithms
|
|
||||||
6. **Neural Network Agent** - Ports DensePose head, modality translation using tch-rs/onnx
|
|
||||||
7. **API Agent** - Implements Axum/Actix REST API and WebSocket handlers
|
|
||||||
8. **Database Agent** - Implements SQLx PostgreSQL/SQLite with migrations
|
|
||||||
9. **Config Agent** - Implements configuration management, environment handling
|
|
||||||
|
|
||||||
### Tier 4: Platform & Integration (3 Agents)
|
|
||||||
10. **WASM Agent** - Implements wasm-bindgen, browser compatibility, wasm-pack builds
|
|
||||||
11. **Hardware Agent** - Ports CSI extraction, router interfaces, hardware abstraction
|
|
||||||
12. **Integration Agent** - Integrates ruvector crates, vector search, GNN layers
|
|
||||||
|
|
||||||
### Tier 5: Quality Assurance (3 Agents)
|
|
||||||
13. **Test Agent** - Writes unit, integration, and benchmark tests
|
|
||||||
14. **Validation Agent** - Validates against Python implementation, accuracy checks
|
|
||||||
15. **Optimization Agent** - Profiles, benchmarks, and optimizes hot paths
|
|
||||||
|
|
||||||
## Crate Workspace Structure
|
|
||||||
|
|
||||||
```
|
|
||||||
wifi-densepose-rs/
|
|
||||||
├── Cargo.toml # Workspace root
|
|
||||||
├── crates/
|
|
||||||
│ ├── wifi-densepose-core/ # Core types, traits, errors
|
|
||||||
│ ├── wifi-densepose-signal/ # Signal processing (CSI, phase, FFT)
|
|
||||||
│ ├── wifi-densepose-nn/ # Neural networks (DensePose, translation)
|
|
||||||
│ ├── wifi-densepose-api/ # REST/WebSocket API (Axum)
|
|
||||||
│ ├── wifi-densepose-db/ # Database layer (SQLx)
|
|
||||||
│ ├── wifi-densepose-config/ # Configuration management
|
|
||||||
│ ├── wifi-densepose-hardware/ # Hardware abstraction
|
|
||||||
│ ├── wifi-densepose-wasm/ # WASM bindings
|
|
||||||
│ └── wifi-densepose-cli/ # CLI application
|
|
||||||
├── docs/
|
|
||||||
│ ├── adr/ # Architecture Decision Records
|
|
||||||
│ ├── ddd/ # Domain-Driven Design docs
|
|
||||||
│ └── api/ # API documentation
|
|
||||||
├── benches/ # Benchmarks
|
|
||||||
└── tests/ # Integration tests
|
|
||||||
```
|
|
||||||
|
|
||||||
## Domain Model (DDD)
|
|
||||||
|
|
||||||
### Bounded Contexts
|
|
||||||
1. **Signal Domain** - CSI data, phase processing, feature extraction
|
|
||||||
2. **Pose Domain** - DensePose inference, keypoints, segmentation
|
|
||||||
3. **Streaming Domain** - WebSocket, real-time updates, connection management
|
|
||||||
4. **Storage Domain** - Persistence, caching, retrieval
|
|
||||||
5. **Hardware Domain** - Router interfaces, device management
|
|
||||||
|
|
||||||
### Core Aggregates
|
|
||||||
- `CsiFrame` - Raw CSI data aggregate
|
|
||||||
- `ProcessedSignal` - Cleaned and extracted features
|
|
||||||
- `PoseEstimate` - DensePose inference result
|
|
||||||
- `Session` - Client session with history
|
|
||||||
- `Device` - Hardware device state
|
|
||||||
|
|
||||||
## ADR Topics to Document
|
|
||||||
- ADR-001: Rust Workspace Structure
|
|
||||||
- ADR-002: Signal Processing Library Selection
|
|
||||||
- ADR-003: Neural Network Inference Strategy
|
|
||||||
- ADR-004: API Framework Selection (Axum vs Actix)
|
|
||||||
- ADR-005: Database Layer Strategy (SQLx)
|
|
||||||
- ADR-006: WASM Compilation Strategy
|
|
||||||
- ADR-007: Error Handling Approach
|
|
||||||
- ADR-008: Async Runtime Selection (Tokio)
|
|
||||||
- ADR-009: ruvector Integration Strategy
|
|
||||||
- ADR-010: Configuration Management
|
|
||||||
|
|
||||||
## Phase Execution Plan
|
|
||||||
|
|
||||||
### Phase 1: Foundation
|
|
||||||
- Set up Cargo workspace
|
|
||||||
- Create all crate scaffolding
|
|
||||||
- Write ADR-001 through ADR-005
|
|
||||||
- Define core traits and types
|
|
||||||
|
|
||||||
### Phase 2: Core Implementation
|
|
||||||
- Port signal processing algorithms
|
|
||||||
- Implement neural network inference
|
|
||||||
- Build API layer
|
|
||||||
- Database integration
|
|
||||||
|
|
||||||
### Phase 3: Platform
|
|
||||||
- WASM compilation
|
|
||||||
- Hardware abstraction
|
|
||||||
- ruvector integration
|
|
||||||
|
|
||||||
### Phase 4: Quality
|
|
||||||
- Comprehensive testing
|
|
||||||
- Python validation
|
|
||||||
- Benchmarking
|
|
||||||
- Optimization
|
|
||||||
|
|
||||||
## Success Metrics
|
|
||||||
- Feature parity with Python implementation
|
|
||||||
- < 10ms latency improvement over Python
|
|
||||||
- WASM bundle < 5MB
|
|
||||||
- 100% test coverage
|
|
||||||
- All ADRs documented
|
|
||||||
@@ -5,7 +5,10 @@ edition.workspace = true
|
|||||||
authors.workspace = true
|
authors.workspace = true
|
||||||
license.workspace = true
|
license.workspace = true
|
||||||
description = "RuVector v2.0.4 integration layer — ADR-017 signal processing and MAT ruvector integrations"
|
description = "RuVector v2.0.4 integration layer — ADR-017 signal processing and MAT ruvector integrations"
|
||||||
|
repository.workspace = true
|
||||||
keywords = ["wifi", "csi", "ruvector", "signal-processing", "disaster-detection"]
|
keywords = ["wifi", "csi", "ruvector", "signal-processing", "disaster-detection"]
|
||||||
|
categories = ["science", "computer-vision"]
|
||||||
|
readme = "README.md"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
ruvector-mincut = { workspace = true }
|
ruvector-mincut = { workspace = true }
|
||||||
|
|||||||
Reference in New Issue
Block a user