workspace/projects/gamilit/docs/database
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
..
DESIGN-GUIDELINES.md feat: Initial workspace structure with multi-level Git configuration 2025-12-08 10:44:23 -06:00
README.md feat: Initial workspace structure with multi-level Git configuration 2025-12-08 10:44:23 -06:00

docs/database/ - Directorio de Trazabilidad de Base de Datos

IMPORTANTE: Este directorio fue deprecado. La trazabilidad de base de datos NO va aquí.

Enfoque Incorrecto (Deprecado)

docs/database/
├── SCHEMA_NAME_TRACEABILITY.yml  ❌ NO crear archivos sueltos por schema
├── AUTH_TRACEABILITY.yml         ❌ Documentación sin referencias
└── CONTENT_MANAGEMENT_TRACEABILITY.yml ❌ No referenciado desde épicas

Problema: Archivos de trazabilidad sueltos que no están referenciados desde requerimientos/épicas.


Enfoque Correcto

La trazabilidad de base de datos debe ir en los archivos TRACEABILITY.yml de cada épica, bajo:

docs/
├── 01-fase-alcance-inicial/
│   └── EAI-XXX-nombre/
│       └── implementacion/
│           └── TRACEABILITY.yml  ✅ Mapea objetos de BD aquí
│
├── 02-fase-robustecimiento/
│   └── EMR-XXX-nombre/
│       └── implementacion/
│           └── TRACEABILITY.yml  ✅ Mapea objetos de BD aquí
│
└── 03-fase-extensiones/
    └── EXT-XXX-nombre/
        └── implementacion/
            └── TRACEABILITY.yml  ✅ Mapea objetos de BD aquí

Ejemplo: EXT-006 (Gestión de Contenido)

Ubicación: docs/03-fase-extensiones/EXT-006-contenido/implementacion/TRACEABILITY.yml

epic_code: EXT-006
epic_name: CMS para Contenido Educativo

implementation:
  database:
    tables:
      - name: content_versions
        type: new
        description: Historial de versiones de contenido
        schema: content_management

      - name: content_approvals
        type: new
        description: Workflow de aprobación
        schema: content_management

  backend:
    module: content-management
    services:
      - content-version.service.ts
      - content-approval.service.ts

  frontend:
    components:
      - VersionHistory.tsx
      - ApprovalWorkflow.tsx

📋 Flujo de Trazabilidad Correcto

Requerimiento/Épica
    ↓
TRACEABILITY.yml de la épica
    ↓
Objetos de Base de Datos
    ↓
Backend (services, entities)
    ↓
Frontend (components)

Beneficios de este enfoque:

  1. Trazabilidad clara: Desde requerimiento hasta implementación
  2. Evita duplicación: Antes de crear un objeto, verificar épicas existentes
  3. Documentación útil: Referenciada y mantenida
  4. No documentación suelta: Todo tiene propósito y referencias

📊 Inventarios (Ubicación Correcta)

Los inventarios globales de base de datos SÍ van en:

docs/90-transversal/inventarios-database/
├── inventarios/
│   ├── 01-SCHEMAS-INVENTORY.md       ✅ Inventario de schemas
│   ├── 02-TABLES-INVENTORY.md        ✅ Inventario de tablas
│   ├── 03-ENUMS-INVENTORY.md         ✅ Inventario de ENUMs
│   ├── 04-FUNCTIONS-INVENTORY.md     ✅ Inventario de funciones
│   ├── 05-TRIGGERS-INVENTORY.md      ✅ Inventario de triggers
│   └── INVENTORY-MASTER-REPORT.md    ✅ Reporte consolidado
│
├── DATABASE-PROJECT-README.md         ✅ Estado del proyecto de BD
└── TRACKING-CORRECCIONES.md           ✅ Tracking de correcciones

Y también en:

docs/90-transversal/inventarios/
├── DATABASE_INVENTORY.yml             ✅ Inventario consolidado
├── BACKEND_INVENTORY.yml              ✅ Inventario de backend
├── FRONTEND_INVENTORY.yml             ✅ Inventario de frontend
└── TRACEABILITY_MATRIX.yml            ✅ Matriz de trazabilidad

🎯 Uso de Este Directorio

Este directorio docs/database/ puede usarse OPCIONALMENTE para:

  1. Documentación técnica complementaria (si tiene sentido)
  2. ADRs específicos de base de datos (decisiones arquitectónicas)
  3. Guías de diseño de schema (estándares, patrones)

Pero NO para:

  • Archivos de trazabilidad por schema
  • Documentación que duplica TRACEABILITY.yml de épicas
  • Inventarios (van en docs/90-transversal/)

🔧 Archivos Deprecados

Los siguientes archivos fueron movidos a .deprecated porque no están referenciados desde épicas:

  • CONTENT_MANAGEMENT_TRACEABILITY.yml.deprecated - No referenciado
  • AUTH_TRACEABILITY.yml - Eliminado (no tenía propósito)

Si necesitas información de estos archivos, migra el contenido útil a los TRACEABILITY.yml correspondientes de las épicas.


📚 Recursos

  • Guía de trazabilidad: docs/95-guias-desarrollo/GUIA-TRAZABILIDAD.md (por crear)
  • Ejemplo completo: docs/03-fase-extensiones/EXT-006-contenido/implementacion/TRACEABILITY.yml
  • Inventarios: docs/90-transversal/inventarios-database/
  • Sistema SIMCO: docs/97-adr/ADR-0002-simco-system.md

Última actualización: 2025-11-11 Motivo: Corrección de estructura de documentación - Trazabilidad debe ir en épicas, no en archivos sueltos