mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-15 01:21:09 +02:00
- Add audits content collection to manacore landing (Astro schema with 8 category scores) - Create scoring methodology doc (docs/PROD_READINESS_SCORE.md) - Add audit list page with client-side filtering (status) and sorting (score/name/date) - Add audit detail page with score bars, metrics, and markdown content - Write audits for all 19 apps: calendar (76), contacts (80), todo (79), chat (74), picture (72), mukke (71), matrix (68), manacore (65), nutriphi (63), photos (62), zitare (62), context (60), skilltree (58), clock (58), storage (55), presi (55), planta (50), manadeck (48), questions (48), traces (35) - Default sort: score descending; filters: All/Production/Beta/Alpha - Deployed to Cloudflare Pages Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
80 lines
3.1 KiB
Markdown
80 lines
3.1 KiB
Markdown
# Production Readiness Score
|
|
|
|
Bewertungssystem für die Produktionsreife der ManaCore Apps. Jede App wird in 8 Kategorien (0-100) bewertet. Der Gesamtscore ist ein gewichteter Durchschnitt.
|
|
|
|
## Kategorien & Gewichtung
|
|
|
|
| Kategorie | Gewicht | Was wird bewertet |
|
|
|-----------|---------|-------------------|
|
|
| **Backend** (20%) | 20 | Module, Controller, Services, DTOs, Validation, Error Handling |
|
|
| **Frontend** (20%) | 20 | Routes, Components, Stores, Responsiveness, Loading States |
|
|
| **Database** (10%) | 10 | Schema-Design, Migrations, Seeds, Indexes, Constraints |
|
|
| **Testing** (15%) | 15 | Unit Tests, Integration Tests, E2E Tests, Coverage, Mock Infra |
|
|
| **Deployment** (10%) | 10 | Dockerfile, Docker Compose, Health Checks, CI/CD, Env Config |
|
|
| **Documentation** (5%) | 5 | CLAUDE.md, API Docs, README, Code Comments |
|
|
| **Security** (10%) | 10 | Auth Guards, Rate Limiting, Input Validation, CORS, GDPR |
|
|
| **UX** (10%) | 10 | i18n, PWA, Offline, Accessibility, Animations, Error Boundaries |
|
|
|
|
## Bewertungsskala pro Kategorie
|
|
|
|
| Score | Level | Beschreibung |
|
|
|-------|-------|--------------|
|
|
| 0-20 | Nicht vorhanden | Feature existiert nicht oder ist Placeholder |
|
|
| 21-40 | Prototyp | Grundstruktur vorhanden, nicht funktional |
|
|
| 41-60 | Alpha | Funktional aber unvollständig, viele Lücken |
|
|
| 61-80 | Beta | Weitgehend komplett, einige Lücken |
|
|
| 81-95 | Production | Produktionsreif, minor Verbesserungen möglich |
|
|
| 96-100 | Mature | Vollständig, getestet, gehärtet |
|
|
|
|
## Gesamtscore → Status-Mapping
|
|
|
|
| Score | Status | Beschreibung |
|
|
|-------|--------|--------------|
|
|
| 0-25 | `prototype` | Konzept/Prototyp, nicht nutzbar |
|
|
| 26-50 | `alpha` | Grundfunktionen, instabil |
|
|
| 51-70 | `beta` | Feature-complete, nicht gehärtet |
|
|
| 71-85 | `production` | Produktionsreif, stabil |
|
|
| 86-100 | `mature` | Ausgereift, umfassend getestet |
|
|
|
|
## Scoring-Details
|
|
|
|
### Backend (0-100)
|
|
- 0-10: Kein Backend
|
|
- 11-30: Grundstruktur (main.ts, 1-2 Module)
|
|
- 31-50: CRUD vorhanden, keine Validation
|
|
- 51-70: DTOs, Guards, Error Handling
|
|
- 71-85: Rate Limiting, Admin Endpoints, Metrics
|
|
- 86-100: Comprehensive Validation, alle Edge Cases
|
|
|
|
### Frontend (0-100)
|
|
- 0-10: Kein Frontend
|
|
- 11-30: Grundrouten, kein State Management
|
|
- 31-50: CRUD-Seiten, basic Stores
|
|
- 51-70: Loading States, Error Handling, Navigation
|
|
- 71-85: Responsive, Animations, Keyboard Support
|
|
- 86-100: PWA, Offline, Accessibility vollständig
|
|
|
|
### Testing (0-100)
|
|
- 0: Keine Tests
|
|
- 1-20: Jest Config vorhanden, keine Tests
|
|
- 21-40: 1-5 Test Files, nur Happy Path
|
|
- 41-60: Mock Infra, Service Tests, Error Cases
|
|
- 61-80: Controller Tests, Integration Tests
|
|
- 81-100: E2E Tests, >80% Coverage
|
|
|
|
### Security (0-100)
|
|
- 0-20: Keine Auth
|
|
- 21-40: Auth Guards vorhanden
|
|
- 41-60: + Input Validation, CORS
|
|
- 61-80: + Rate Limiting, GDPR Endpoints
|
|
- 81-100: + Encryption, Audit Logs, Pen-Testing
|
|
|
|
## Audit-Ablauf
|
|
|
|
1. Code-Review aller Projektdateien
|
|
2. Zählung: Module, Routes, Components, Tests, Tables
|
|
3. Bewertung jeder Kategorie (0-100)
|
|
4. Gewichteter Gesamtscore berechnen
|
|
5. Status ableiten
|
|
6. Audit als Content in `apps/manacore/apps/landing/src/content/audits/` ablegen
|
|
7. Empfehlungen für Verbesserungen dokumentieren
|