workspace/projects/gamilit/artifacts/_MAP.md
rckrdmrd ea1879f4ad feat: Initial workspace structure with multi-level Git configuration
- Configure workspace Git repository with comprehensive .gitignore
- Add Odoo as submodule for ERP reference code
- Include documentation: SETUP.md, GIT-STRUCTURE.md
- Add gitignore templates for projects (backend, frontend, database)
- Structure supports independent repos per project/subproject level

Workspace includes:
- core/ - Reusable patterns, modules, orchestration system
- projects/ - Active projects (erp-suite, gamilit, trading-platform, etc.)
- knowledge-base/ - Reference code and patterns (includes Odoo submodule)
- devtools/ - Development tools and templates
- customers/ - Client implementations template

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-08 10:44:23 -06:00

500 lines
13 KiB
Markdown

# _MAP: artifacts/
**Última actualización:** 2025-11-07
**Estado:** 🟡 En desarrollo (estructura creada, contenido pendiente)
**Versión:** 2.0
---
## 📋 Propósito de esta Carpeta
Esta carpeta contiene **artefactos generados** por builds, análisis, reportes y herramientas de desarrollo. NO contiene código fuente, solo outputs y productos derivados.
**Objetivo:** Centralizar todos los artefactos generados para facilitar acceso, versionado y análisis histórico.
**Audiencia:**
- Tech Leads
- QA Engineers
- DevOps Engineers
- Stakeholders
- Agentes de IA
---
## 📁 Estructura de Contenido
### Subcarpetas Principales
| Carpeta | Propósito | Generado Por | Owner | Estado | _MAP.md |
|---------|-----------|--------------|-------|--------|---------|
| **diagrams/** | Diagramas de arquitectura (mermaid, plantuml) | Agentes + Manual | @tech-lead @architects | ⚪ Vacío | ✅ |
| **changelogs/** | Changelogs generados automáticamente | Scripts + CI/CD | @tech-lead @devops | ⚪ Vacío | ✅ |
| **reports/** | Reportes de validación, coverage, performance | Tests + Scripts | @qa-team @devops | ⚪ Vacío | ✅ |
| └─ **coverage/** | Reportes de cobertura de tests | Jest/Vitest | @qa-team | ⚪ Vacío | ✅ |
| └─ **performance/** | Reportes de performance (Lighthouse, k6) | Performance tests | @qa-team | ⚪ Vacío | ✅ |
| └─ **validation/** | Reportes de validación de integridad | Validation scripts | @qa-team | ⚪ Vacío | ✅ |
---
## 🗂️ Detalle por Subcarpeta
### diagrams/ (0 archivos)
**Descripción:** Diagramas de arquitectura y flujos
**Tipos de diagramas planeados:**
- Diagramas de arquitectura (C4 model)
- Diagramas de flujo (mermaid)
- Diagramas de secuencia (PlantUML)
- ERD (Entity Relationship Diagrams)
- Diagramas de componentes
- Diagramas de deployment
**Formatos soportados:**
- `.mmd` - Mermaid diagrams
- `.puml` - PlantUML diagrams
- `.svg` - SVG exports
- `.png` - PNG exports
**Generación:**
- Manual (draw.io, Excalidraw)
- Automática (mermaid-cli, plantuml)
- Extractada de código (agentes)
**Estado:** ⚪ Estructura creada, sin contenido
**_MAP.md:** ✅ Existe
**Ejemplo de contenido esperado:**
```
diagrams/
├── architecture/
│ ├── c4-context.mmd
│ ├── c4-container.mmd
│ ├── c4-component-backend.mmd
│ └── c4-component-frontend.mmd
├── flows/
│ ├── auth-flow.mmd
│ ├── quiz-submission-flow.mmd
│ └── gamification-flow.mmd
├── database/
│ ├── erd-full.puml
│ ├── erd-auth-management.puml
│ └── erd-gamification-system.puml
└── deployment/
├── deployment-dev.mmd
├── deployment-staging.mmd
└── deployment-prod.mmd
```
---
### changelogs/ (0 archivos)
**Descripción:** Changelogs generados automáticamente
**Tipos de changelogs:**
- CHANGELOG.md por versión
- Release notes
- Migration guides
- Breaking changes lists
**Generación:**
- Automática desde commits (conventional commits)
- CI/CD pipeline
- Manual (tech lead review)
**Formato:**
```markdown
# Changelog
## [2.0.0] - 2025-11-07
### Added
- Feature X
- Feature Y
### Changed
- Backend migrado a monorepo
- Frontend refactorizado
### Fixed
- Bug #123: Fix critical issue
### Removed
- Deprecated API v1
```
**Estado:** ⚪ Estructura creada, sin contenido
**_MAP.md:** ✅ Existe
---
### reports/ (3 subcarpetas, 0 archivos)
**Descripción:** Reportes técnicos generados por tests y análisis
**Subcarpetas:**
#### coverage/ (0 archivos)
**Descripción:** Reportes de cobertura de tests
**Generado por:**
- Jest (backend): `npm run test:cov`
- Vitest (frontend): `npm run test:ui`
**Formatos:**
- HTML reports (coverage/index.html)
- JSON (coverage/coverage-summary.json)
- LCOV (coverage/lcov.info)
- Text (coverage/coverage.txt)
**Contenido esperado:**
```
coverage/
├── backend/
│ ├── index.html
│ ├── coverage-summary.json
│ └── lcov.info
└── frontend/
├── index.html
├── coverage-summary.json
└── lcov.info
```
**Estado:** ⚪ Sin contenido
**_MAP.md:** ✅ Existe
---
#### performance/ (0 archivos)
**Descripción:** Reportes de performance y benchmarks
**Generado por:**
- Lighthouse (frontend)
- k6 (backend load testing)
- Artillery (API stress testing)
- Custom benchmarks
**Tipos de reportes:**
- Lighthouse reports (HTML + JSON)
- k6 load testing results
- API response time benchmarks
- Database query performance
**Contenido esperado:**
```
performance/
├── lighthouse/
│ ├── 2025-11-07-desktop.html
│ ├── 2025-11-07-mobile.html
│ └── summary.json
├── load-testing/
│ ├── k6-results-2025-11-07.json
│ └── artillery-report.json
└── benchmarks/
├── api-response-times.json
└── db-query-performance.json
```
**Estado:** ⚪ Sin contenido (tests no implementados)
**_MAP.md:** ✅ Existe
---
#### validation/ (0 archivos)
**Descripción:** Reportes de validación de integridad del sistema
**Generado por:**
- `npm run validate:constants` (detect hardcoding)
- `npm run validate:api-contract` (Backend ↔ Frontend sync)
- Custom validation scripts
**Tipos de validaciones:**
- Constants SSOT compliance
- API contract synchronization
- Type synchronization (Backend ↔ Frontend)
- RLS policies completeness
- Database schema integrity
**Contenido esperado:**
```
validation/
├── constants-validation-2025-11-07.md
├── api-contract-validation-2025-11-07.md
├── type-sync-validation-2025-11-07.md
├── rls-policies-validation-2025-11-07.md
└── schema-integrity-validation-2025-11-07.md
```
**Estado:** ⚪ Sin contenido (validaciones manuales en orchestration/)
**_MAP.md:** ✅ Existe
---
## 📊 Métricas Globales
### Estado Actual
| Categoría | Planeado | Actual | % |
|-----------|----------|--------|---|
| **Diagramas** | 20+ | 0 | 0% |
| **Changelogs** | 5+ versiones | 0 | 0% |
| **Coverage Reports** | 2 (backend/frontend) | 0 | 0% |
| **Performance Reports** | 10+ | 0 | 0% |
| **Validation Reports** | 5+ tipos | 0 | 0% |
### Tamaño Estimado
| Categoría | Tamaño Estimado |
|-----------|-----------------|
| **Diagramas** | ~5 MB |
| **Changelogs** | ~500 KB |
| **Coverage Reports** | ~50 MB (HTML) |
| **Performance Reports** | ~20 MB |
| **Validation Reports** | ~2 MB |
| **TOTAL** | **~77 MB** |
---
## 🔗 Interdependencias
### Esta Carpeta Consume De:
- **apps/backend/** - Tests generan coverage
- **apps/frontend/** - Tests generan coverage
- **docs/** - Diagramas documentan arquitectura
- **orchestration/** - Reportes de análisis
- **.git/** - Commits para changelogs
### Esta Carpeta Alimenta A:
- **CI/CD** - Reports integrados en pipeline
- **Stakeholders** - Changelogs y métricas
- **Developers** - Coverage para mejorar tests
- **QA Team** - Performance benchmarks
- **Tech Leads** - Decisiones basadas en datos
### Flujo de Generación:
```
┌──────────────────────────────────────┐
│ Build / Test / Analyze │
└────────────────┬─────────────────────┘
┌───────┼───────┐
▼ ▼ ▼
┌────────┬────────┬────────┐
│Coverage│Perform.│Validat.│
└────┬───┴───┬────┴───┬────┘
│ │ │
└───────┼────────┘
┌───────▼────────┐
│ artifacts/ │
│ reports/ │
└───────┬────────┘
┌───────▼────────┐
│ CI/CD │
│ Dashboard │
└────────────────┘
```
---
## 🚨 Issues Conocidos
### P0 (Crítico)
- **P0-001:** Carpeta completamente vacía
- **Impacto:** No hay artefactos generados
- **Razón:** Tests, performance tests, y scripts de generación no implementados
- **Esfuerzo:** 10-15 horas (implementar generación)
### P1 (Alto)
- **P1-001:** Coverage reports no se generan automáticamente
- **Solución:** Configurar Jest/Vitest para output en artifacts/
- **Esfuerzo:** 1 hora
- **P1-002:** Sin integración CI/CD
- **Solución:** GitHub Actions para generar y subir artifacts
- **Esfuerzo:** 2 horas
### P2 (Medio)
- **P2-001:** Diagramas deben crearse manualmente
- **Recomendación:** Generar automáticamente desde código (mermaid-cli)
- **Esfuerzo:** 4 horas
---
## 📐 Estándares Aplicables
### Nomenclatura de Archivos
**Diagramas:**
- `kebab-case-diagram-type.mmd`
- `architecture-c4-context.svg`
**Changelogs:**
- `CHANGELOG.md` (único, versionado internamente)
- `CHANGELOG-v2.0.0.md` (por versión mayor)
**Reports:**
- `coverage-backend-YYYY-MM-DD.html`
- `performance-lighthouse-YYYY-MM-DD.json`
- `validation-constants-YYYY-MM-DD.md`
### Exclusiones de Git
**Añadir a .gitignore:**
```
# Artifacts (grandes o regenerables)
artifacts/reports/coverage/
artifacts/reports/performance/
*.lcov
*.html (reports)
# Keep
!artifacts/diagrams/
!artifacts/changelogs/
```
---
## 🔍 Validación (Go/No-Go)
### Criterios de Aceptación
- [x] Estructura de carpetas creada
- [x] _MAP.md en todas las subcarpetas
- [x] _MAP.md raíz creado (este archivo)
- [ ] Al menos 1 coverage report generado
- [ ] Al menos 1 performance report generado
- [ ] Al menos 1 validation report generado
- [ ] CHANGELOG.md inicial creado
- [ ] Al menos 5 diagramas creados
**Decisión:** 🟡 **Estructura GO, Contenido NO-GO** - Pendiente implementación
---
## 📞 Contacto y Soporte
**Owner principal:** @tech-lead
**Maintainers:**
- Diagramas: @tech-lead @architects
- Changelogs: @tech-lead @devops
- Coverage: @qa-team
- Performance: @qa-team @devops
- Validation: @qa-team
**Reporte de issues:**
- GitHub Issues: [GAMILIT Artifacts]
- Slack: #gamilit-qa
---
## 🎯 Próximos Pasos
### Fase 1 - Urgente (Esta Semana)
1. ✅ _MAP.md creado (este archivo)
2. ⬜ Configurar Jest/Vitest para output en artifacts/reports/coverage/
3. ⬜ Generar primer coverage report
4. ⬜ Crear CHANGELOG.md inicial
### Fase 2 - Alta Prioridad (Próximas 2 Semanas)
5. ⬜ Crear 5 diagramas principales (C4 architecture)
6. ⬜ Configurar Lighthouse para performance reports
7. ⬜ Implementar validation reports automáticos
8. ⬜ Integrar con GitHub Actions
### Fase 3 - Media Prioridad (Próximo Mes)
9. ⬜ k6 load testing + reports
10. ⬜ Automatizar generación de diagramas desde código
11. ⬜ Dashboard de métricas (Grafana)
12. ⬜ Historical tracking de coverage/performance
---
## 🚀 Configuración de Generación
### Coverage Reports
**Backend (Jest):**
```json
// jest.config.js
{
"coverageDirectory": "../../artifacts/reports/coverage/backend",
"coverageReporters": ["html", "json", "lcov", "text"]
}
```
**Frontend (Vitest):**
```typescript
// vite.config.ts
export default {
test: {
coverage: {
provider: 'v8',
reportsDirectory: '../../artifacts/reports/coverage/frontend',
reporter: ['html', 'json', 'lcov', 'text']
}
}
}
```
### Performance Reports
**Lighthouse:**
```bash
# Script de ejecución
lighthouse http://localhost:5173 \
--output=html \
--output-path=artifacts/reports/performance/lighthouse/$(date +%Y-%m-%d).html
```
**k6:**
```bash
# Script de ejecución
k6 run tests/load-test.js \
--out json=artifacts/reports/performance/k6/$(date +%Y-%m-%d).json
```
### Validation Reports
**Constants validation:**
```bash
npm run validate:constants > artifacts/reports/validation/constants-$(date +%Y-%m-%d).md
```
---
## 📚 Recursos Adicionales
**Herramientas de generación:**
- [Mermaid CLI](https://github.com/mermaid-js/mermaid-cli) - Generar diagramas
- [PlantUML](https://plantuml.com/) - UML diagrams
- [Lighthouse](https://github.com/GoogleChrome/lighthouse) - Performance audits
- [k6](https://k6.io/) - Load testing
- [conventional-changelog](https://github.com/conventional-changelog/conventional-changelog) - Changelogs automáticos
**Dashboards:**
- [Codecov](https://codecov.io/) - Coverage tracking
- [Grafana](https://grafana.com/) - Metrics visualization
- [Datadog](https://www.datadoghq.com/) - APM
---
**Generado:** 2025-11-07
**Método:** Sistema SIMCO - Fase 1 (Mapas P0)
**Próxima actualización:** Tras implementar generación de artifacts
**Versión:** 1.0.0