Files
gkachele-saas/codex/VERSIONADO_IA.md

9.3 KiB

Versionado IA - UB24 / Elementor

0) Protocolo Bloqueante (siempre)

  1. Definir objetivo del lote en 1 linea.
  2. Tocar un solo archivo por fix (salvo excepcion aprobada).
  3. Hacer un solo cambio por intento.
  4. Probar inmediatamente con flujo fijo acordado.
  5. Si falla, revert inmediato por hash/commit (sin encadenar parches).
  6. Si pasa, commit atomico con mensaje semantico.
  7. Push solo con orden explicita del usuario.
  8. Antes de declarar estado, verificar sync real (fetch + rev-list).

1) Objetivo

Definir un proceso de versionado auditable, reproducible y estable para el desarrollo del builder UB24.

2) Estado actual verificado

  • Fecha de verificacion: 2026-03-04
  • Rama activa: ai/ub24-builder-v1
  • Upstream: origin/ai/ub24-builder-v1
  • Divergencia local/remoto: 0 0
  • HEAD actual: 8f56e84
  • Ultimo commit: 8f56e84 feat(customizer): add pro visual presets, social styles, and responsive map controls
  • Comando usado:
    • git rev-list --left-right --count ai/ub24-builder-v1...origin/ai/ub24-builder-v1

3) Politica de versionado

  1. Commits atomicos por cambio funcional.
  2. Mensajes bajo convencion semantica.
  3. Reversion siempre definida por commit.
  4. Cada bloque validado se empuja a remoto.
  5. No mezclar cambios de infraestructura con cambios de UX en el mismo commit.

4) Convencion de commits

  • feat(builder): ...
  • fix(builder): ...
  • refactor(builder): ...
  • chore(versioning): ...
  • docs(builder): ...

5) Flujo obligatorio por sesion

  1. Verificar rama activa:
    • git branch --show-current
  2. Actualizar referencias remotas:
    • git fetch origin --prune
  3. Verificar divergencia:
    • git rev-list --left-right --count ai/ub24-builder-v1...origin/ai/ub24-builder-v1
  4. Si no es 0 0, sincronizar antes de editar.
  5. Al cerrar lote validado:
    • git add <archivos>
    • git commit -m "tipo(scope): mensaje"
    • git push origin ai/ub24-builder-v1

5.1) Metodo de ejecucion memorizado (obligatorio)

  1. Misma rama activa (ai/ub24-builder-v1), sin ramas paralelas para fixes rapidos.
  2. Control por hash/revert: si un intento falla, revert inmediato por commit.
  3. Un archivo por fix cuando sea posible (evitar mezclar cambios laterales).
  4. Validacion funcional inmediata despues de cada microcambio.
  5. No commit/push sin orden explicita del usuario.

6) Protocolo de arranque local

  • Comando canonico:
    • python -m demo.app
  • URL canonica:
    • http://127.0.0.1:5001
  • Builder:
    • http://127.0.0.1:5001/elementor/1
  • Verificacion rapida:
    • Invoke-WebRequest http://127.0.0.1:5001/elementor/1 -UseBasicParsing

7) Criterios de estabilidad (no negociables)

  1. No tocar funcionalidades estables sin requerimiento explicito.
  2. Mantener una sola estrategia de layout y DnD por flujo.
  3. Mantener una sola ruta de guardado activa:
    • /api/elementor/save
  4. Validar guardado/publicacion antes de cerrar lote.
  5. Evitar cambios amplios si un fix local resuelve el problema.

8) Registro de commits relevantes

Fecha Commit Tipo Objetivo Revert recomendado
2026-02-21 e83e915 fix Estabilizar Drawer Pro, reset real de builder y restaurar tema restaurante editable + ancho git revert e83e915
2026-02-14 cb99f26 chore Crear rama y politica inicial de versionado IA git revert cb99f26
2026-02-14 fe8657e fix Revertir commit no deseado y limpiar historial git revert fe8657e
2026-02-14 22e564e fix Robustecer arranque local/theme load en Windows git revert 22e564e
2026-02-14 1c04f04 feat Mejora visual base (hero/features/cards/contact) git revert 1c04f04
2026-02-14 7c5f671 fix Limpieza preview/menu y ajustes de ancho git revert 7c5f671
2026-02-14 dd98e9d fix Preview limpio y menu por modos git revert dd98e9d
2026-02-15 1a5778b refactor Runtime unificado python -m demo.app + blueprint Elementor git revert 1a5778b
2026-02-15 8ac360b feat Educacion V2 + correccion de anclas git revert 8ac360b
2026-02-15 f6d8ab1 fix Corregir wrapper SQLite para evitar fallo de arranque git revert f6d8ab1
2026-02-15 b6fb4da feat API dedicada /api/elementor/save con opcion publicar git revert b6fb4da
2026-02-15 c2ee81d fix Persistencia de bloques + feedback de publish git revert c2ee81d
2026-02-15 e20f086 fix Preview full-page y layout estable por secciones git revert e20f086
2026-02-15 e5df6de feat Full width + soporte real de 2 columnas git revert e5df6de
2026-02-15 a6089ee feat Drag inteligente por drop + preview en nueva pestana git revert a6089ee
2026-02-15 f9f7d23 fix Quitar layout global y forzar preview completo git revert f9f7d23
2026-02-15 f363eef fix Correccion de texto/UI + modo libre + ?full=1 git revert f363eef
2026-02-16 6f14308 fix Unificar layout y estabilizar redimension en canvas git revert 6f14308

9) Decisiones funcionales vigentes

  • Rubros oficiales permitidos:
    • restaurante
    • danza
    • cosmeticos
    • despachos
    • gimnasios
    • educacion
    • base_otro
  • Preview final separada habilitada:
    • GET /elementor/<site_id>/preview-final
    • GET /ub24/<site_id>/preview-final
  • Customizer activo unificado:
    • GET /customizer/<site_id>
  • Rutas legacy retiradas:
    • GET /customizer2/<site_id> -> 404
    • GET /customizer3/<site_id> -> 404
  • Motor de reordenamiento seleccionado para DnD:
    • SortableJS (estrategia unica)

10) Pendientes priorizados

  1. QA manual de cada icono/accion del menu superior en preview final (siguiente lote).
  2. Cerrar y validar flujo unico del customizer en docs cruzadas (sin rutas legacy).
  3. Footer global obligatorio con autoria del proyecto.
  4. Watermark de autoria en codigo bajo convencion unica.
  5. Flujo dual estable de preview (editor/pagina real) + mejora touch/capacitiva.

11) Referencias cruzadas

  • Historial funcional detallado: codex/HISTORIAL_CAMBIOS.md
  • Arranque rapido local: codex/ARRANQUE_RAPIDO_UB24.md
  • Flujo general del proyecto: codex/FLUJO_PROYECTO.md

12) Nota operativa

Este archivo define el estandar de trabajo. Cualquier cambio de proceso debe registrarse en un commit chore(versioning) y quedar reflejado aqui.

Memorizado.

En la próxima sesión haré esto como primer paso:

  1. Revisar en internet referencias de diseño (layouts, bloques, redes, animaciones, efectos pro).
  2. Extraer patrones aplicables al builder.
  3. Convertirlos en mejoras concretas y ordenadas en tu proyecto.

Entendido.

Queda memorizado el foco: mejorar sin retrocesos, calidad profesional y avance real por lotes verificables.
Cuando vuelvas, arranco leyendo memoria y ejecutando directo.

13) Continuidad de sesion (agregado 2026-03-04)

  • Se adopta esquema de memoria en 3 capas:
    1. AGENTS.md (reglas estables)
    2. codex/SESSION_STATE.md (estado vivo de trabajo)
    3. codex/VERSIONADO_IA.md (historial de decisiones/versionado)
  • Hook de arranque oficial:
    • powershell -ExecutionPolicy Bypass -File .\codex\start-session.ps1
  • Hook de cierre oficial:
    • powershell -ExecutionPolicy Bypass -File .\codex\end-session.ps1

14) Ajuste de operacion (2026-03-04)

  • A partir de esta fecha, la lectura de contexto de inicio es automatica por politica del asistente.
  • No se requiere ejecutar scripts manuales para que el asistente cargue memoria.
  • start-session.ps1 y end-session.ps1 quedan como herramientas opcionales de soporte.

15) Regla de sincronizacion estricta (2026-03-04)

  1. Toda respuesta sobre "version actual" debe salir de git en tiempo real, no de memoria previa.
  2. Al detectar desfase entre memoria y HEAD, actualizar codex/VERSIONADO_IA.md y codex/MEMORIA_CODEX.md en la misma sesion.
  3. Toda afirmacion de push/sync debe incluir evidencia de rev-list:
    • 0 0 = sincronizado
    • distinto de 0 0 = no sincronizado

16) Lote aplicado (2026-03-05)

  • Rama de trabajo confirmada: ai/ub24-builder-v1
  • Base de partida: 8f56e84
  • Archivo principal intervenido:
    • elementor/templates/elementor_builder.html
  • Cambios del lote:
    1. Reset restaura plantilla base por rubro (ya no borra todo).
    2. Flujo restaurante en free_drag preserva posicion manual (sin auto-restack agresivo por render).
    3. Botones subir/bajar aplican reordenamiento visible.
    4. Mapeo de menu a bloques por semantica + tipo (contact, map, social, review, cards/gallery/hero).
  1. Autosave borrador en cambios de inspector/settings.
  2. Preview final recibe device (desktop/tablet/phone) desde el editor.

17) Lote aplicado (2026-03-10)

  • Rama de trabajo: ai/ub24-builder-v1
  • Commits:
    • 442acb1 fix(menu): add glass preset and save logging
    • 9ff6d2e chore: ignore local artifacts
    • 32ea784 chore(session): log glass preset changes
  • Cambios:
    1. Menú ahora soporta presets default/glass/dark con blur/sombra/hover; selector en inspector y aplicación en render (elementor/templates/elementor_builder.html).
    2. Log de guardados de /api/elementor/save para capturar presets recibidos en logs/elementor_save.log (elementor/routes.py).
    3. .gitignore ampliado para excluir artefactos locales (db, logs, snapshots, pycache, gitea_data, free-llm resources).
    4. codex/SESSION_STATE.md actualizado con el estado de estos cambios y bloqueos vigentes.