Tareas - Sprint 📅

Documentación relacionada:


Hito 1: Formato 3.1 Unidad Funcional

Sprint 1 (Semanas 1-2): Montaje de Proyecto y PDF Preliminar

Inicio: 2025-11-17 | Fin: 2025-11-30

Montaje Proyecto ganttchart

  • [2] Crear Repositorio Github ➕ 2025-11-20 🛫 2025-11-20 ⏳ 2025-11-20 📅 2025-11-20 ✅ 2025-11-24
  • [2] Crear Proyecto Laravel ➕ 2025-11-20 🛫 2025-11-20 ⏳ 2025-11-20 📅 2025-11-20 ✅ 2025-11-24
  • [3] Configurar .env y servicios (DB, Queue, Storage) ➕ 2025-11-21 🛫 2025-11-21 ⏳ 2025-11-22 📅 2025-11-22 ✅ 2025-11-24
  • [8] Montar Migraciones Base de datos (19 tablas) ➕ 2025-11-23 🛫 2025-11-23 ⏳ 2025-11-26 📅 2025-11-26 ✅ 2025-12-01
  • [3] Verificar integridad de relaciones FK ➕ 2025-11-26 🛫 2025-11-26 ⏳ 2025-11-27 📅 2025-11-27 ✅ 2025-12-01
  • [5] Instalar dependencias ➕ 2025-11-21 🛫 2025-11-21 ⏳ 2025-11-22 📅 2025-11-22 ✅ 2025-11-24
    • Jetstream + Livewire ✅ 2025-11-24
    • Filament v3 ✅ 2025-11-24
    • Spatie Laravel-Permission ✅ 2025-11-24
    • Laravel Auditing ✅ 2025-11-24
    • Log-viewer ✅ 2025-11-24
  • [2] Instalar Librerías JS ➕ 2025-11-21 🛫 2025-11-21 ⏳ 2025-11-21 📅 2025-11-21 ✅ 2025-11-26
    • Tailwind CSS ✅ 2025-11-26
  • [5] Configurar usuarios y permisos [[documentación/Requerimientos - MVP#RFN08 - Control de Acceso PRNF08|#PRNF08]] ➕ 2025-11-27 🛫 2025-11-27 ⏳ 2025-11-29 📅 2025-11-29 ✅ 2025-11-25
    • Crear seeders de roles (Admin, ProductionTeam, Consulta) ✅ 2025-11-24
    • Crear usuarios de prueba ✅ 2025-11-24
    • Configurar políticas básicas de Filament ✅ 2025-11-25
  • [2] Test: Verificar login y acceso por roles ➕ 2025-11-29 🛫 2025-11-29 ⏳ 2025-11-29 📅 2025-11-29 ✅ 2025-11-24

Montaje PDF Preliminar

  • [2] Conseguir assets corporativos (logo, colores hex, tipografías) ➕ 2025-11-30 🛫 2025-11-30 ⏳ 2025-11-30 📅 2025-11-30 ✅ 2025-12-01
  • [8] Montar formato PDF mockup [[documentación/Requerimientos - MVP#RFN07 - Formato Institucional PRNF07|#PRNF07]] ➕ 2025-12-01 🛫 2025-12-01 ⏳ 2025-12-03 📅 2025-12-03 ✅ 2025-12-01
    • Aplicar colores corporativos Passos ✅ 2025-12-01
    • Incluir logotipo ✅ 2025-12-01
    • Montar header y footer institucional ✅ 2025-12-01
    • Crear 2-3 secciones de ejemplo con datos dummy ✅ 2025-12-01
    • Incluir tabla de ejemplo ✅ 2025-12-01
    • Incluir imagen de ejemplo ✅ 2025-12-01
  • [2] Test: Generar PDF de demostración ➕ 2025-12-03 🛫 2025-12-03 ⏳ 2025-12-03 📅 2025-12-03 ✅ 2025-12-01

Entregable Sprint 1: Demo PDF para stakeholder


Sprint 2 (Semanas 3-4): Análisis y Parametrización

Inicio: 2025-12-01 | Fin: 2025-12-14

Análisis y Parametrización Formato 3.1

  • [8] Analizar estructura del formato 3.1 ➕ 2025-12-04 🛫 2025-12-04 ⏳ 2025-12-06 📅 2025-12-06 ✅ 2025-12-08
    • Descargar PDF real del formato 3.1 actual ✅ 2025-12-08
    • Documentar todas las secciones del PDF ✅ 2025-12-08
    • Identificar todos los campos por sección ✅ 2025-12-08
    • Clasificar tipos de campo (text, number, date, select, etc) ✅ 2025-12-08
    • Identificar grupos/tablas ✅ 2025-12-08
    • Documentar jerarquía de secciones ✅ 2025-12-08
  • [5] Analizar Kiseo Form ➕ 2025-12-07 🛫 2025-12-07 ⏳ 2025-12-09 📅 2025-12-09 ✅ 2025-12-08
    • Obtener export de Kiseo Form 3.1 (CSV/JSON) ✅ 2025-12-08
    • Documentar mapeo: Campo Kiseo → Campo BD ✅ 2025-12-08
    • Identificar transformaciones necesarias ✅ 2025-12-08
  • [5] Crear seeders de datos base ➕ 2025-12-10 🛫 2025-12-10 ⏳ 2025-12-11 📅 2025-12-11 ✅ 2025-12-08
    • Seeder: field_types (text, number, date, select, textarea, image, file) ✅ 2025-12-08
    • Seeder: report_types (Comercial Unidad Funcional) ✅ 2025-12-08
    • Seeder: method_types (métodos de avalúo usados) ✅ 2025-12-08
  • [8] Parametrizar estructura de secciones [[documentación/Requerimientos - MVP#RF13 - Configurar secciones de plantillas PRF13|#PRF13]] ➕ 2025-12-12 🛫 2025-12-12 ⏳ 2025-12-14 📅 2025-12-14
    • Crear secciones principales en tabla sections ✅ 2025-12-08
    • Crear subsecciones (con parent_id) ✅ 2026-01-02
    • Vincular a report_types en report_types_sections ✅ 2025-12-08
    • Configurar orden (order) de cada sección
    • Configurar show_number por sección ✅ 2025-12-08
  • [8] Parametrizar campos del formato 3.1 [[documentación/Requerimientos - MVP#RF12 - Agregar nuevos campos a informe PRF12|#PRF12]] ➕ 2025-12-15 🛫 2025-12-15 ⏳ 2025-12-16 📅 2025-12-16 ✅ 2025-12-21
    • Crear todos los registros en tabla fields ✅ 2025-12-21
    • Asignar field_type_id correcto ✅ 2025-12-08
    • Asignar section_id correcto ✅ 2025-12-08
    • Configurar row_number para ordenamiento ✅ 2025-12-08
  • [5] Configurar grupos (tablas) ➕ 2025-12-16 🛫 2025-12-16 ⏳ 2025-12-17 📅 2025-12-17 ✅ 2025-12-08
    • Crear registros en tabla group ✅ 2025-12-08
    • Configurar cols_qtt e is_table ✅ 2025-12-08
    • Vincular fields a group_id ✅ 2025-12-08
  • [3] Configurar validaciones ➕ 2025-12-17 🛫 2025-12-17 ⏳ 2025-12-17 📅 2025-12-17 ✅ 2025-12-21
    • Crear field_validations para campos críticos ✅ 2025-12-21
    • Definir validation_rule (required, min, max, etc) ✅ 2025-12-21
    • Definir error_message personalizados ✅ 2025-12-21
  • [2] Test: Consultar estructura completa desde BD ➕ 2025-12-17 🛫 2025-12-17 ⏳ 2025-12-17 📅 2025-12-17 ✅ 2025-12-21

Entregable Sprint 2: Estructura de formato 3.1 completamente parametrizada en BD


Sprint 3 (Semanas 5-6): Motor de Generación de PDFs prev

Inicio: 2025-12-15 | Fin: 2025-12-28

Motor de Generación de PDFs

  • [13] Desarrollar servicio ReportGenerator [[documentación/Requerimientos - MVP#RF09 - Generar PDF formato Passos PRF09|#PRF09]] ➕ 2025-12-20 🛫 2025-12-20 ⏳ 2025-12-25 📅 2025-12-25 ✅ 2025-12-21
    • Crear clase ReportGenerator ✅ 2025-12-08
    • Implementar método: cargar estructura (sections, fields) ✅ 2025-12-08
    • Implementar método: cargar datos (catched_fields) ✅ 2025-12-21
    • Implementar método: renderizar secciones ✅ 2025-12-08
    • Implementar método: renderizar campos por tipo ✅ 2025-12-08
    • Implementar método: renderizar grupos/tablas (is_table=true) ✅ 2025-12-08
  • [8] Aplicar formato institucional Passos [[documentación/Requerimientos - MVP#RFN07 - Formato Institucional PRNF07|#PRNF07]] ➕ 2025-12-26 🛫 2025-12-26 ⏳ 2025-12-28 📅 2025-12-28 ✅ 2025-12-08
    • Blade template: header con logotipo ✅ 2025-12-08
    • Blade template: footer con info corporativa ✅ 2025-12-08
    • CSS: colores corporativos ✅ 2025-12-08
    • CSS: tipografía oficial ✅ 2025-12-08
    • Numeración de secciones (según show_number) ✅ 2025-12-08
  • [5] Manejar imágenes en PDF ➕ 2025-12-29 🛫 2025-12-29 ⏳ 2025-12-30 📅 2025-12-30
    • Inserción en PDF con dimensiones correctas
  • [8] Implementar sistema de colas [[documentación/Requerimientos - MVP#RF09 - Generar PDF formato Passos PRF09|#PRF09]] ➕ 2025-12-30 🛫 2025-12-30 ⏳ 2025-12-31 📅 2025-12-31 ❌ 2025-12-27
    • Crear Job: GenerateReportPDF ❌ 2025-12-27
    • Configurar queue en .env ❌ 2025-12-27
    • Implementar notificación al usuario (success) ❌ 2025-12-27
    • Implementar manejo de errores y reintentos ❌ 2025-12-27
    • Almacenar PDF generado en Dropbox ❌ 2025-12-27
  • [3] Test: Generar PDF completo con datos de ejemplo ➕ 2025-12-31 🛫 2025-12-31 ⏳ 2025-12-31 📅 2025-12-31 ✅ 2026-01-02

Entregable Sprint 3: Motor de generación de PDFs funcional con formato institucional


Sprint 4 (Semanas 7-8): Flujo de Creación - Parte 1 actual

Inicio: 2025-12-29 | Fin: 2026-01-11

Flujo de Creación de Informes - Inicio y Captura

  • [5] Módulo: Iniciar Proceso de Tasación [[documentación/Requerimientos - MVP#RF01 - Iniciar proceso tasación PRF01|#PRF01]] ➕ 2026-01-02 🛫 2026-01-02 ⏳ 2026-01-03 📅 2026-01-03
    • Panel Filament Resource: Reports ✅ 2025-12-21
    • Formulario: service_number, client_id ✅ 2025-12-21
    • Validación: service_number único
    • Botón: “Iniciar Tasación”
  • [5] Listado de tasaciones [[documentación/Requerimientos - MVP#RF01 - Iniciar proceso tasación PRF01|#PRF01]] ➕ 2026-01-04 🛫 2026-01-04 ⏳ 2026-01-05 📅 2026-01-05
    • Tabla Filament con todas las tasaciones ✅ 2026-01-02
    • Filtros: estado, cliente, fecha, tipo
    • Acciones: Ver, Editar, Generar PDF
  • [3] Selector tipo de tasación [[documentación/Requerimientos - MVP#RF02 - Agregar tipo tasación PRF02|#PRF02]] ➕ 2026-01-06 🛫 2026-01-06 ⏳ 2026-01-06 📅 2026-01-06
    • Dropdown de report_types
    • Cargar estructura dinámica al seleccionar
    • Mostrar preview de secciones que se cargarán
  • [5] Parametrizar datos según tipo [[documentación/Requerimientos - MVP#RF02 - Agregar tipo tasación PRF02|#PRF02]] ➕ 2026-01-07 🛫 2026-01-07 ⏳ 2026-01-08 📅 2026-01-08
    • Cargar sections según report_type_id
    • Cargar fields según sections
    • Preparar estructura para catched_fields
  • [2] Test: Crear tasación y verificar estructura ➕ 2026-01-08 🛫 2026-01-08 ⏳ 2026-01-08 📅 2026-01-08
  • [8] Módulo: Importar Kiseo Form [[documentación/Requerimientos - MVP#RF04 - Cargar informe inspección PRF04|#PRF04]] ➕ 2026-01-09 🛫 2026-01-09 ⏳ 2026-01-11 📅 2026-01-11
    • Form upload: archivo Kiseo (CSV/JSON/PDF)
    • Parser: leer datos del archivo
    • Mapear: campos Kiseo → catched_fields
    • Crear registros en catched_fields
    • Guardar field_snapshot en JSONB
  • [2] Test: Importar Kiseo y verificar datos en BD ➕ 2026-01-11 🛫 2026-01-11 ⏳ 2026-01-11 📅 2026-01-11
  • [13] Formulario dinámico de captura ➕ 2026-01-12 🛫 2026-01-12 ⏳ 2026-01-14 📅 2026-01-14
    • Renderizar formulario según estructura de fields
    • Componente Livewire por field_type:
      • TextInput para type=text
      • NumberInput para type=number
      • DatePicker para type=date
      • Select para type=select
      • Textarea para type=textarea
      • FileUpload para type=image/file
    • Agrupar campos según group_id
    • Renderizar tablas (is_table=true)

Entregable Sprint 4: Flujo de inicio de tasación e importación Kiseo funcional


Sprint 5 (Semanas 9-10): Flujo de Creación - Parte 2 next

Inicio: 2026-01-12 | Fin: 2026-01-25

Flujo de Creación de Informes - Edición y Funcionalidades

  • [5] Guardar datos capturados ➕ 2026-01-15 🛫 2026-01-15 ⏳ 2026-01-16 📅 2026-01-16
    • Almacenar en catched_fields.value_typed (JSONB)
    • Aplicar field_validations
    • Mostrar error_message si falla validación
  • [2] Test: Capturar datos y verificar en BD ➕ 2026-01-16 🛫 2026-01-16 ⏳ 2026-01-16 📅 2026-01-16
  • [5] Módulo: Editar información [[documentación/Requerimientos - MVP#RF05 - Corregir información inspección PRF05|#PRF05]] ➕ 2026-01-17 🛫 2026-01-17 ⏳ 2026-01-18 📅 2026-01-18
    • Modal de edición de catched_fields
    • Formulario prellenado con datos actuales
    • Guardar cambios
    • Registrar auditoría con Laravel Audit
  • [5] Mostrar historial de cambios [[documentación/Requerimientos - MVP#RF05 - Corregir información inspección PRF05|#PRF05]] ➕ 2026-01-19 🛫 2026-01-19 ⏳ 2026-01-20 📅 2026-01-20
    • Integración con Laravel Audit
    • Timeline de modificaciones
    • Usuario, fecha, valor anterior → nuevo
  • [2] Test: Editar campo y verificar auditoría ➕ 2026-01-20 🛫 2026-01-20 ⏳ 2026-01-20 📅 2026-01-20
  • [8] Módulo: Introducir imágenes del activo [[documentación/Requerimientos - MVP#RF05 - Corregir información inspección PRF05|#PRF05]] ➕ 2026-01-21 🛫 2026-01-21 ⏳ 2026-01-23 📅 2026-01-23
    • Upload múltiple de imágenes
    • Almacenar en Dropbox
    • Vincular a report en catched_fields
    • Preview de imágenes cargadas
  • [2] Test: Subir imágenes y generar PDF con ellas ➕ 2026-01-23 🛫 2026-01-23 ⏳ 2026-01-23 📅 2026-01-23
  • [5] Módulo: Añadir campos personalizados [[documentación/Requerimientos - MVP#RF06 - Añadir más campos PRF06|#PRF06]] ➕ 2026-01-24 🛫 2026-01-24 ⏳ 2026-01-25 📅 2026-01-25
    • Botón “Agregar campo personalizado”
    • Form: nombre, field_type_id, section_id
    • Crear custom_fields o usar catched_fields directamente
    • Renderizar en formulario dinámico
  • [2] Test: Crear campo custom y generar PDF ➕ 2026-01-25 🛫 2026-01-25 ⏳ 2026-01-25 📅 2026-01-25
  • [5] Módulo: Adjuntar documentos soporte [[documentación/Requerimientos - MVP#RF07 - Adjuntar documentos soporte PRF07|#PRF07]] ➕ 2026-01-26 🛫 2026-01-26 ⏳ 2026-01-28 📅 2026-01-28
    • Upload de archivos (PDF, Word, Excel, imágenes)
    • Almacenar en Dropbox
    • Tabla: documentos adjuntos al report
    • Tipo de documento, descripción
  • [2] Test: Adjuntar documentos y descargar ➕ 2026-01-28 🛫 2026-01-28 ⏳ 2026-01-28 📅 2026-01-28

Entregable Sprint 5: Funcionalidades de edición, imágenes, campos custom y documentos


Sprint 6 (Semana 11): Flujo de Creación - Finalización

Inicio: 2026-01-26 | Fin: 2026-02-01

Flujo de Creación de Informes - Markdown y Personalización

  • [8] Módulo: Añadir textos libres en Markdown [[documentación/Requerimientos - MVP#RF08 - Añadir más información PRF08|#PRF08]] ➕ 2026-01-29 🛫 2026-01-29 ⏳ 2026-01-31 📅 2026-01-31 ✅ 2025-12-08
    • Integrar editor Markdown (TipTap recomendado) ✅ 2025-12-08
    • Almacenar en absolute_text ✅ 2025-12-08
    • Vincular a report o section ✅ 2025-12-08
    • Renderizar Markdown → HTML en PDF ✅ 2025-12-08
  • [2] Test: Agregar texto MD y verificar en PDF ➕ 2026-01-31 🛫 2026-01-31 ⏳ 2026-01-31 📅 2026-01-31
  • [8] Módulo: Personalizar orden de secciones [[documentación/Requerimientos - MVP#RF10 - Generar reporte personalizado PRF10|#PRF10]] ➕ 2026-02-01 🛫 2026-02-01 ⏳ 2026-02-03 📅 2026-02-03
    • Interfaz drag-and-drop de secciones
    • Guardar en section_order_overrides
    • Campos: section_id, number, show_number, number_typed, name
    • Preview de estructura personalizada
  • [2] Test: Reordenar secciones y generar PDF ➕ 2026-02-03 🛫 2026-02-03 ⏳ 2026-02-03 📅 2026-02-03
  • [3] Flujo completo: Crear tasación → Importar → Editar → Generar PDF ➕ 2026-02-04 🛫 2026-02-04 ⏳ 2026-02-04 📅 2026-02-04

Entregable Sprint 6: Flujo completo de creación de informes funcional


Sprint 7 (Semanas 12-13): Panel Admin

Inicio: 2026-02-02 | Fin: 2026-02-15

Panel Admin: Gestión de Plantillas

  • [5] Resource Filament: ReportTypes [[documentación/Requerimientos - MVP#RF11 - Configurar plantillas PRF11|#PRF11]] ➕ 2026-02-05 🛫 2026-02-05 ⏳ 2026-02-06 📅 2026-02-06 ✅ 2025-12-08
    • CRUD de report_types ✅ 2025-12-08
    • Form: name ✅ 2025-12-08
    • Listado de tipos de reporte ✅ 2025-12-08
  • [5] Vincular secciones a report_types [[documentación/Requerimientos - MVP#RF11 - Configurar plantillas PRF11|#PRF11]] ➕ 2026-02-07 🛫 2026-02-07 ⏳ 2026-02-09 📅 2026-02-09
    • RelationManager: report_types_sections
    • Seleccionar sections disponibles
    • Configurar order de cada sección
  • [2] Test: Crear nuevo tipo de reporte ➕ 2026-02-09 🛫 2026-02-09 ⏳ 2026-02-09 📅 2026-02-09 ✅ 2025-12-08
  • [8] Resource Filament: Sections [[documentación/Requerimientos - MVP#RF13 - Configurar secciones de plantillas PRF13|#PRF13]] ➕ 2026-02-10 🛫 2026-02-10 ⏳ 2026-02-12 📅 2026-02-12 ✅ 2025-12-08
    • CRUD de sections ✅ 2025-12-08
    • Form: name, show_number, parent_id ✅ 2025-12-08
    • Árbol de jerarquía (secciones y subsecciones) ✅ 2025-12-08
  • [2] Test: Crear sección con subsecciones ➕ 2026-02-12 🛫 2026-02-12 ⏳ 2026-02-12 📅 2026-02-12 ✅ 2025-12-08
  • [8] Resource Filament: Fields [[documentación/Requerimientos - MVP#RF12 - Agregar nuevos campos a informe PRF12|#PRF12]] ➕ 2026-02-13 🛫 2026-02-13 ⏳ 2026-02-15 📅 2026-02-15 ✅ 2025-12-08
    • CRUD de fields ✅ 2025-12-08
    • Form: name, field_type_id, section_id, row_number, group_id ✅ 2025-12-08
    • Filtros por sección ✅ 2025-12-08
  • [5] Configurar validaciones desde admin ➕ 2026-02-16 🛫 2026-02-16 ⏳ 2026-02-17 📅 2026-02-17
    • RelationManager: field_validations ✅ 2025-12-08
    • Form: validation_rule, error_message
  • [2] Test: Agregar campo nuevo a plantilla ➕ 2026-02-17 🛫 2026-02-17 ⏳ 2026-02-17 📅 2026-02-17

Entregable Sprint 7: Panel de administración de plantillas funcional


Sprint 8 (Semana 14): Previsualizador y Versionado

Inicio: 2026-02-16 | Fin: 2026-02-22

Panel Admin: Previsualizador y Versionado

  • [8] Módulo: Previsualizador de plantillas [[documentación/Requerimientos - MVP#RFN06 - Previsualizar plantillas PRNF06|#PRNF06]] ➕ 2026-02-19 🛫 2026-02-19 ⏳ 2026-02-22 📅 2026-02-22 ✅ 2025-12-08
    • Botón “Preview” en ReportTypes ✅ 2025-12-08
    • Generar HTML preview con estructura ✅ 2025-12-08
    • Mostrar secciones, campos, grupos ✅ 2025-12-08
    • Opción: Preview PDF con datos dummy ✅ 2025-12-08
  • [2] Test: Previsualizar plantilla antes de activar ➕ 2026-02-22 🛫 2026-02-22 ⏳ 2026-02-22 📅 2026-02-22 ✅ 2025-12-08
  • [8] Sistema de versionado de plantillas [[documentación/Requerimientos - MVP#RF11 - Configurar plantillas PRF11|#PRF11]] ➕ 2026-02-23 🛫 2026-02-23 ⏳ 2026-02-25 📅 2026-02-25
    • Soft deletes en sections y fields (deleted_at)
    • Mantener field_snapshot en catched_fields
    • Verificar que reportes antiguos no se afecten
  • [2] Test: Modificar plantilla y verificar reportes existentes ➕ 2026-02-25 🛫 2026-02-25 ⏳ 2026-02-25 📅 2026-02-25

Entregable Sprint 8: Sistema de versionado y previsualizador completo


Sprint 9 (Semanas 15-16): Historial y Auditoría

Inicio: 2026-02-23 | Fin: 2026-03-08

Historial y Auditoría

  • [5] Módulo: Consultar información histórica [[documentación/Requerimientos - MVP#RFN01 - Consultar información histórica PRNF01|#PRNF01]] ➕ 2026-02-26 🛫 2026-02-26 ⏳ 2026-02-28 📅 2026-02-28
    • Filtros avanzados en listado Reports
    • Búsqueda por: service_number, cliente, fecha, tipo
    • Paginación eficiente
    • Export a Excel de resultados
  • [2] Test: Buscar tasaciones por múltiples criterios ➕ 2026-02-28 🛫 2026-02-28 ⏳ 2026-02-28 📅 2026-02-28
  • [5] Módulo: Ver reportes generados [[documentación/Requerimientos - MVP#RFN02 - Ver reportes anteriormente generados PRNF02|#PRNF02]] ➕ 2026-03-01 🛫 2026-03-01 ⏳ 2026-03-02 📅 2026-03-02
    • Tabla: reportes PDF generados por tasación
    • Columnas: fecha generación, usuario, tipo, plantilla
    • Descarga de cualquier versión anterior
  • [2] Test: Descargar reporte antiguo ➕ 2026-03-02 🛫 2026-03-02 ⏳ 2026-03-02 📅 2026-03-02
  • [5] Módulo: Historial de generaciones [[documentación/Requerimientos - MVP#RFN03 - Ver historial de generaciones PRNF03|#PRNF03]] ➕ 2026-03-03 🛫 2026-03-03 ⏳ 2026-03-04 📅 2026-03-04
    • Timeline de todas las generaciones
    • Metadata: usuario, fecha/hora, template usado
    • Estado: exitoso / fallido
  • [2] Test: Verificar timeline completo ➕ 2026-03-04 🛫 2026-03-04 ⏳ 2026-03-04 📅 2026-03-04
  • [8] Módulo: Historial de modificaciones [[documentación/Requerimientos - MVP#RFN04 - Ver historial modificaciones PRNF04|#PRNF04]] ➕ 2026-03-05 🛫 2026-03-05 ⏳ 2026-03-07 📅 2026-03-07
    • Integración completa con Laravel Audit
    • Vista: todos los cambios en catched_fields
    • Filtros: campo, usuario, fecha
    • Formato: campo | anterior → nuevo | usuario | fecha
  • [2] Test: Editar múltiples campos y verificar auditoría ➕ 2026-03-07 🛫 2026-03-07 ⏳ 2026-03-07 📅 2026-03-07
  • [8] Módulo: Comparar versiones de reportes [[documentación/Requerimientos - MVP#RFN05 - Visualizar cambios entre reportes PRNF05|#PRNF05]] ➕ 2026-03-08 🛫 2026-03-08 ⏳ 2026-03-11 📅 2026-03-11
    • Seleccionar 2 versiones del mismo report
    • Diff visual lado a lado
    • Highlight de cambios en catched_fields
    • Listado de campos modificados
  • [2] Test: Comparar 2 versiones y verificar diff ➕ 2026-03-11 🛫 2026-03-11 ⏳ 2026-03-11 📅 2026-03-11

Entregable Sprint 9: Módulos de historial y auditoría completos


Sprint 10 (Semanas 17-18): Importación Histórica - Parte 1

Inicio: 2026-03-09 | Fin: 2026-03-22

Importación de Información Histórica - Diseño y Extracción

  • [5] Diseñar estructura datos históricos [[documentación/Requerimientos - MVP#RFN09 - Importación de Datos Históricos PRNF09|#PRNF09]] ➕ 2026-03-12 🛫 2026-03-12 ⏳ 2026-03-14 📅 2026-03-14
    • Definir qué campos extraer de PDFs antiguos
    • Decidir: ¿nueva tabla o usar reports existente?
    • Diseñar flag: is_imported = true
  • [3] Crear migraciones si es necesario [[documentación/Requerimientos - MVP#RFN09 - Importación de Datos Históricos PRNF09|#PRNF09]] ➕ 2026-03-14 🛫 2026-03-14 ⏳ 2026-03-15 📅 2026-03-15
  • [2] Test: Estructura BD para históricos ➕ 2026-03-15 🛫 2026-03-15 ⏳ 2026-03-15 📅 2026-03-15
  • [13] Implementar extracción de PDFs [[documentación/Requerimientos - MVP#RFN09 - Importación de Datos Históricos PRNF09|#PRNF09]] ➕ 2026-03-16 🛫 2026-03-16 ⏳ 2026-03-21 📅 2026-03-21
    • Evaluar librerías OCR si hay PDFs escaneados
    • Parser para PDFs con estructura conocida
    • Extracción de texto y tablas
    • Mapeo a campos actuales
  • [3] Test: Extraer datos de 1 PDF de prueba ➕ 2026-03-21 🛫 2026-03-21 ⏳ 2026-03-22 📅 2026-03-22
  • [8] Comando Artisan: ImportHistoricalReports [[documentación/Requerimientos - MVP#RFN09 - Importación de Datos Históricos PRNF09|#PRNF09]] ➕ 2026-03-23 🛫 2026-03-23 ⏳ 2026-03-25 📅 2026-03-25
    • Leer PDFs de carpeta Dropbox
    • Ejecutar parser por cada PDF
    • Crear reports con is_imported=true
    • Crear catched_fields con datos extraídos
    • Progress bar y logging
    • Queue de validación manual

Entregable Sprint 10: Sistema de extracción e importación de PDFs históricos


Sprint 11 (Semanas 19-20): Importación Histórica - Parte 2 y Cierre

Inicio: 2026-03-23 | Fin: 2026-04-05

Importación de Información Histórica - Validación y Cierre

  • [3] Test: Importar 10 PDFs de muestra ➕ 2026-03-26 🛫 2026-03-26 ⏳ 2026-03-27 📅 2026-03-27
  • [5] Almacenar enlaces de Dropbox [[documentación/Requerimientos - MVP#RFN02 - Ver reportes anteriormente generados PRNF02|#PRNF02]] ➕ 2026-03-28 🛫 2026-03-28 ⏳ 2026-03-29 📅 2026-03-29
    • Vincular PDF original a report
    • Metadata: fecha original, ubicación Dropbox
    • Acceso desde panel para descargar original
  • [2] Test: Acceder a PDF original desde panel ➕ 2026-03-29 🛫 2026-03-29 ⏳ 2026-03-29 📅 2026-03-29
  • [8] Validación manual de importados ➕ 2026-03-30 🛫 2026-03-30 ⏳ 2026-04-02 📅 2026-04-02
    • Dashboard: reportes pendientes de validación
    • Comparación: PDF original vs datos extraídos
    • Aprobar / Editar / Rechazar
    • Tasa de exactitud objetivo: ≥85%
  • [3] Test: Validar 10 reportes importados ➕ 2026-04-02 🛫 2026-04-02 ⏳ 2026-04-03 📅 2026-04-03

Sprint 11 (Semanas 20): Escaneo de Títulos OCR

Inicio: 2026-03-23 | Fin: 2026-04-05

Cierre del Hito 1

  • [5] Pruebas de integración completas ➕ 2026-04-04 🛫 2026-04-04 ⏳ 2026-04-05 📅 2026-04-05
  • [5] Corrección de bugs encontrados ➕ 2026-04-06 🛫 2026-04-06 ⏳ 2026-04-07 📅 2026-04-07
  • [3] Documentación técnica del sistema ➕ 2026-04-07 🛫 2026-04-07 ⏳ 2026-04-08 📅 2026-04-08
  • [2] Demo final con stakeholders ➕ 2026-04-08 🛫 2026-04-08 ⏳ 2026-04-08 📅 2026-04-08

Entregable Sprint 11: Hito 1 completamente funcional y documentado


Resumen del Hito 1

Duración total: 20 semanas (100 días hábiles = 400 horas) Inicio: 2025-11-17 Fin: 2026-04-05

Story Points - Referencia:

  • [2] - Tarea simple (1-2 horas)
  • [3] - Tarea moderada (medio día)
  • [5] - Tarea compleja (1 día)
  • [8] - Tarea muy compleja (2 días)
  • [13] - Tarea extremadamente compleja (3-5 días)

Puntos de Validación con Stakeholder:

  1. Semana 2 (30/Nov): Demo PDF mockup
  2. Semana 4 (14/Dic): Validación estructura parametrizada
  3. Semana 6 (28/Dic): Demo motor generación PDFs
  4. Semana 11 (01/Feb): Demo flujo completo de creación
  5. Semana 16 (08/Mar): Demo historial y auditoría
  6. Semana 20 (05/Abr): Demo final y cierre

Sprint 12 (Semanas 21-22): OCR Títulos de Propiedad backlog

Inicio: 2026-04-06 | Fin: 2026-04-19

Estructura de Base de Datos

  • [5] Crear migraciones para títulos de propiedad
    • Tabla property_titles (id, report_id, file_path, file_type, processed_at, status)
    • Tabla title_extracted_data (datos extraídos con campos encriptados)
    • Campos sensibles con cast encrypted (propietario, cédula, etc.)
    • Relación con tabla reports
  • [3] Crear modelos Eloquent
    • Model PropertyTitle con relaciones
    • Model TitleExtractedData con $casts encrypted
    • Definir fillables y relaciones

Evaluación y Configuración de IA

  • [5] Evaluar opciones de IA para extracción
    • Prueba con Google Cloud Vision (OCR)
    • Prueba con Claude Vision (extracción inteligente)
    • Prueba con GPT-4 Vision (alternativa)
    • Comparar: precisión, costo, velocidad
    • Documentar decisión final
  • [3] Configurar APIs seleccionadas
    • Credenciales en .env (encriptadas)
    • Instalar SDKs necesarios (google/cloud-vision, anthropic, etc.)
    • Configurar rate limits y manejo de errores

Servicios de Extracción

  • [5] Implementar Google Vision OCR Service
    • Método: extractTextFromImage
    • Método: extractTextFromPdf (convertir páginas a imagen)
    • Retornar texto plano estructurado
    • Manejo de errores y reintentos
  • [5] Crear TitleExtractorService
    • Método: processTitle(file) - orquestador principal
    • Método: parseExtractedText - enviar a IA para estructurar
    • Prompt engineering para extracción de campos RD
    • Retornar array con campos y nivel de confianza
  • [3] Documentar campos a extraer del título RD
    • Campos header (matrícula, municipio, superficie, fecha inscripción)
    • Campos catastrales (solar, manzana, DC, planta)
    • Campos del texto (propietario, cédula, nacionalidad, condominio)
    • Crear mapeo: campo título → campo del sistema

Interfaz de Usuario

  • [5] UI: Subir título (PDF/imagen)
    • Componente Filament en página de Report
    • Aceptar formatos: PDF, JPG, PNG
    • Validar tamaño máximo (10MB)
    • Indicador de procesamiento
  • [8] UI: Comparar imagen vs campos extraídos
    • Layout dos columnas: imagen izquierda | formulario derecha
    • Visor de imagen con zoom/pan
    • Campos pre-llenados editables
    • Indicador visual de confianza (verde/amarillo/rojo)
    • Resaltar campos no encontrados
    • Botón: “Confirmar y guardar”
    • Botón: “Reintentar escaneo”
    • Botón: “Cancelar”

Integración con Sistema

  • [5] Mapear campos extraídos → catched_fields
    • Vincular título al report activo
    • Auto-rellenar campos del formulario dinámico
    • Confirmar antes de sobrescribir campos existentes
    • Guardar archivo original en storage (Dropbox)
  • [2] Registrar en auditoría
    • Fecha/hora de escaneo
    • Usuario que procesó
    • Campos extraídos vs campos modificados manualmente
    • Nivel de confianza promedio

Testing y Ajustes

  • [3] Tests con títulos reales de muestra
    • Probar con 5-10 títulos variados
    • Medir tasa de precisión por campo
    • Documentar casos edge
  • [2] Ajustar prompts y parsing según resultados

Entregable Sprint 12: Funcionalidad de escaneo de títulos con extracción automática de datos