photoncloud-monorepo/docs/por/T003-feature-gaps/T003-report.md
centra a7ec7e2158 Add T026 practical test + k8shost to flake + workspace files
- Created T026-practical-test task.yaml for MVP smoke testing
- Added k8shost-server to flake.nix (packages, apps, overlays)
- Staged all workspace directories for nix flake build
- Updated flake.nix shellHook to include k8shost

Resolves: T026.S1 blocker (R8 - nix submodule visibility)
2025-12-09 06:07:50 +09:00

3.2 KiB

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


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.