# T003 Feature Gap Analysis - Consolidated Report

**Date**: 2025-12-08
**Status**: COMPLETE

## Executive Summary

| Component | Impl % | P0 Gaps | P1 Gaps | P2 Gaps | Est. Effort |
|-----------|--------|---------|---------|---------|-------------|
| chainfire | 62.5% | 3 | 5 | 0 | 2-3 weeks |
| flaredb | 54.5% | 1 | 5 | 4 | 3-4 weeks |
| iam | 84% | 2 | 4 | 2 | 2-3 weeks |
| **Total** | 67% | **6** | **14** | **6** | **7-10 weeks** |

## Critical P0 Blockers

These MUST be resolved before "Next" phase production deployment:

### 1. FlareDB: Persistent Raft Storage
- **Impact**: DATA LOSS on restart
- **Complexity**: Large (1-2 weeks)
- **Location**: flaredb-raft/src/storage.rs (in-memory only)
- **Action**: Implement RocksDB-backed Raft log/state persistence

### 2. Chainfire: Lease Service
- **Impact**: No TTL expiration, etcd compatibility broken
- **Complexity**: Medium (3-5 days)
- **Location**: Missing gRPC service
- **Action**: Implement Lease service with expiration worker

### 3. Chainfire: Read Consistency
- **Impact**: Stale reads on followers
- **Complexity**: Small (1-2 days)
- **Location**: kv_service.rs
- **Action**: Implement linearizable/serializable read modes

### 4. Chainfire: Range in Transactions
- **Impact**: Atomic read-then-write patterns broken
- **Complexity**: Small (1-2 days)
- **Location**: kv_service.rs:224-229
- **Action**: Fix dummy Delete op return

### 5. IAM: Health Endpoints
- **Impact**: Cannot deploy to K8s/load balancers
- **Complexity**: Small (1 day)
- **Action**: Add /health and /ready endpoints

### 6. IAM: Metrics/Monitoring
- **Impact**: No observability
- **Complexity**: Small (1-2 days)
- **Action**: Add Prometheus metrics

## Recommendations

### Before PlasmaVMC Design

1. **Week 1-2**: FlareDB persistent storage (P0 blocker)
2. **Week 2-3**: Chainfire lease + consistency (P0 blockers)
3. **Week 3**: IAM health/metrics (P0 blockers)
4. **Week 4**: Critical P1 items (region splitting, CLI, audit)

### Parallel Track Option

- IAM P0s are small (3 days) - can start PlasmaVMC design after IAM P0s
- FlareDB P0 is large - must complete before FlareDB goes to production

## Effort Breakdown

| Priority | Count | Effort |
|----------|-------|--------|
| P0 | 6 | 2-3 weeks |
| P1 | 14 | 3-4 weeks |
| P2 | 6 | 2 weeks |
| **Total** | 26 | **7-10 weeks** |

## Answer to Acceptance Questions

### Q: Are there P0 blockers before "Next" phase?
**YES** - 6 P0 blockers. Most critical: FlareDB persistent storage (data loss risk).

### Q: Which gaps should we address before PlasmaVMC?
1. All P0s (essential for any production use)
2. Chainfire transaction responses (P1 - etcd compatibility)
3. FlareDB CLI tool (P1 - operational necessity)
4. IAM audit integration (P1 - compliance requirement)

### Q: Total effort estimate?
**7-10 person-weeks** for all gaps.
**2-3 person-weeks** for P0s only (minimum viable).

## Files Generated

- [chainfire-gaps.md](./chainfire-gaps.md)
- [flaredb-gaps.md](./flaredb-gaps.md)
- [iam-gaps.md](./iam-gaps.md)

---

**Report prepared by**: PeerB
**Reviewed by**: PeerA - APPROVED 2025-12-08 05:40 JST

### PeerA Sign-off Notes
Report quality: Excellent. Clear prioritization, accurate effort estimates.
Decision: **Option (B) Modified Parallel** - see POR update.
