Listo para
que lo revisemos.
Versión pública de prueba de Cencomun. La convocatoria real permanece cerrada.
Funciones implementadas
Formulario en seis pasos, preguntas según sectores, contador de palabras, fotografía con vista previa, resumen y consentimiento, identificador de recepción y protección de reintentos. Panel privado con filtros, fichas, imágenes ampliables, estados, evaluaciones humanas, notas y afirmaciones por verificar con historial. Exportación CSV compatible con Excel y respaldo JSON. Editor administrativo para ocultar campos, cambiar su obligatoriedad y editar preguntas, ayudas y títulos. Portal instalable en aaPanel con recepción local y sincronización manual al panel.
Almacenamiento y acceso
D1 guarda respuestas, relaciones e historial; R2 guarda imágenes privadas. El panel exige Sign in with ChatGPT y un correo administrativo autorizado. Las respuestas originales se conservan y no se sobrescriben al evaluar.
Pruebas locales ejecutadas
28 grupos aprobados el 16/10/2026. Entorno: Miniflare con D1 y R2 persistentes, Node 24/SQLite mediante HTTP local y HTML renderizado en servidor; datos ficticios. La conexión a un servidor aaPanel real se verifica después de instalar el paquete.
Campos obligatorios, redacción 60–120 y consentimiento validados en servidor
Validación real del archivo, MIME y tamaño; falta de imagen
Origen ajeno rechazado
Envío público persiste D1, relaciones y fotografía R2
Reintento y doble envío simultáneo conservan un solo registro
Clave de envío no permite sustituir una respuesta ya recibida
Anónimo no puede leer, actualizar, exportar, respaldar ni descargar imagen
Cuenta autenticada no autorizada queda bloqueada en todos los recursos
Administrador consulta registros, filtra por sector y recupera imagen privada
Evaluación, autor, fecha, historial y control de cambios simultáneos
Exportación tabular completa, acentos, saltos y protección contra fórmulas
Respuestas largas y caracteres especiales se conservan exactamente
Fallo de R2 no crea registro y permite reintento con la misma verificación
Concurrencia de un envío nuevo no duplica filas ni archivos
Persistencia al reiniciar el entorno de ejecución D1 y R2
Rate limit impide ráfagas automatizadas de verificaciones
Editor y clave de enlace rechazan anónimos y cuentas ajenas
Guardar configuración con control de concurrencia y publicación al portal
Interfaz aplica campos ocultos, rótulos escapados y required en HTML
aaPanel no expone clave, SQLite, fotos ni operaciones de sincronización anónimas
aaPanel acepta datos opcionales sin foto y elimina valores ocultos del envío
Validación de servidor respeta obligatorios y versiones previas de formularios abiertos
Recepción y versión activa sobreviven al reinicio de aaPanel
Importación completa a D1/R2, foto opcional e historial de preguntas
Fallo de transferencia o persistencia mantiene pendiente; reintento sin duplicados
Hash alterado no se confirma ni importa
Sitio alojado también valida configuración editable sin depender del navegador
Respaldo consistente de SQLite incluye las fotografías
Pendiente de verificación
Revisión visual en escritorio y móvil, captura de cámara, accesibilidad y sesión real de ChatGPT. No había herramienta de navegador compatible disponible en el entorno de construcción. Las pruebas de autorización locales usaron identidades simuladas; no sustituyen el inicio de sesión real.
Antes de abrir la convocatoria
Validar el acceso de la cuenta administrativa autorizada, aprobar el aviso y el plazo de conservación, retirar las pruebas y autorizar la recepción de candidatos reales. Propuesta de conservación: 6 meses desde el cierre del proceso, con eliminación supervisada. No hay borrado automático ni contactos automáticos a referencias.
Respaldo propuesto
Descarga semanal durante la convocatoria y al cierre: CSV completo, JSON de tablas e historial e imágenes desde las fichas privadas. El JSON contiene los hashes de las imágenes, pero no sus bytes. Guarda las copias con acceso restringido y aplica el mismo plazo de conservación. Una reversión del código no recupera datos anteriores.
Revisar formulario