qcrypt-rng / docs /DASHBOARD_MONITORING_PLAN.md
rocRevyAreGoals15's picture
fixing ui
86deab0
# Dashboard Integration and Monitoring Implementation Plan
**Source:** Dashboard + Monitoring Plan (Phase 2 Tasks 3–4)
**Status:** Both tasks COMPLETE (verified 2026-03-23; frontend builds successfully)
---
## Part 1: Dashboard Integration (Task 3)
### 1.1 API Layer Additions
**File:** `quantum-oracle-ui/src/utils/api.ts`
- **Kyber KEM:** `kemGenerate`, `kemEncapsulate`, `kemDecapsulate`
- **Oracle Fulfillment:** `configureFulfillmentChain`, `createFulfillmentRequest`, `getFulfillmentStatus`, `listFulfillmentRequests`, `getFulfillmentChains`, `retryFulfillment`
**File:** `quantum-oracle-ui/src/types/index.ts` β€” KEM and fulfillment response types
### 1.2 Kyber KEM UI in Protect.tsx
- Algorithm: KYBER512 / KYBER768 / KYBER1024
- Flow: Generate keypair β†’ Sender encapsulate β†’ Recipient decapsulate
- Copy/Download, InfoPopover for workflow explanation
### 1.3 Expanded PQC Algorithms in Protect.tsx
- Signatures: DILITHIUM2/3/5, FALCON512/1024, SPHINCS+-SHA2-128f
- KEM (keys only): KYBER, NTRU, SABER β€” show key gen, link to Kyber KEM section
### 1.4 Oracle Fulfillment UI in QuantumOracle.tsx
- Configure Chain (rpc_url, private_key, etc.) β€” security warning
- Create Request, Status Lookup, List Requests, Retry
- Collapsible, default collapsed
### 1.5 Docs Page
- Add Kyber KEM and Oracle Fulfillment endpoint docs
---
## Part 2: Monitoring (Task 4) β€” COMPLETED
34 Prometheus metrics implemented in `app/monitoring/metrics.py` across 7 categories: oracle fulfillment (7), PQC operations (6), QRNG generation (4), hardware devices (5), entropy quality (4), API performance (5), system (3). Grafana dashboard and alerting rules in `app/monitoring/`. All monitoring endpoints active in `app/api/v2/endpoints/monitoring.py`.
---
## Implementation Order
1. API layer: KEM + fulfillment methods - Done
2. Kyber KEM UI in Protect - Done
3. Expanded PQC dropdown + KEM-only mode - Done
4. Oracle Fulfillment UI in QuantumOracle - Done
5. Docs page update - Done
---
## Security Notes
- Oracle fulfillment: Never use production keys; demo/test only
- Mask private_key input (type="password")