- 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>
500 lines
13 KiB
Markdown
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
|