47 Commits
Author SHA1 Message Date
Nurfog 1a891c3751 refactor: validadores compartidos y componentes de UI extraídos
- src/lib/validators.ts centraliza regex y validaciones (module name,
  subdominio, slug, repoUrl, safeNext) usados por las rutas API y login,
  con tests en validators.test.ts
- DeployStatus, HelpdeskUsage y PagosUsage se extraen de las páginas
  /upload y /m/[name] a componentes propios
- README actualizado con la arquitectura y el contrato de /api/modules
2026-10-13 11:41:45 -03:00
Nurfog ab6a5a148c feat: tablero como Server Component, CSP y stores sin re-render
La página /tablero lee sesión y trae módulos (15s) + stats (30s) en el servidor; TableroView recibe props y el navegador ya no pollea al deployer. CSP endurecido compatible con estáticas (connect/form/img acotados, sin exfiltración externa). Logout limpia el usuario cacheado, los stores comparan contenido antes de notificar y formato en actualizar.
2026-10-08 11:32:52 -03:00
Nurfog 926d41dc51 feat: índice como Server Component e inventario server-side
El índice público renderiza en el servidor con revalidación de 15s (isla IndexRefresh para revalidar). Nuevo GET /api/inventory con sesión: el inventario de 2400 líneas ya no viaja al navegador. Dedup: ProgressBar compartido, hook useVerifyPoll, createStore genérico reutilizado por correo. Quick wins: Dockerfile fijado por digest + healthcheck, README sin emails reales, fuera eslint-disable en m/[name].
2026-10-08 11:21:05 -03:00
Nurfog 8f30b1c1ec feat: auditoría de seguridad en APIs, deuda Next 16 y pnpm como gestor
Cierra autenticación en /api/deployer, POST /api/modules, /api/stats y /verify (assertIT + validación de slugs/nombres). GET /api/modules público sanitizado (solo visibles, sin repoUrl ni logs). Corrige estado unhealthy, XSS en plantillas, open redirect en login. Sesión HMAC en tiempo constante, secret obligatorio, 503 si el backend cae, cookie secure solo en prod. Migra middleware a proxy, rate-limit en login, vitest + typecheck, Tailwind/CDN fuera, Boxicons local, polling pausado y código muerto eliminado. Estandariza pnpm (lock, Dockerfile, packageManager).
2026-10-08 10:29:13 -03:00
Nurfog ba71c4daa6 feat: tablero pagos muestra solo validos y errores aparte con motivo 2026-09-24 09:45:48 -03:00
Nurfog c64e990dfa feat: tablero de modulo con uso real (equipo helpdesk, pagos validados, inventario API en dashboard) 2026-09-22 13:54:54 -03:00
Nurfog b6ca254a82 feat: plantillas de correo en portal IT (listar, crear, editar) 2026-09-21 12:30:43 -03:00
Nurfog 9710d995b8 feat: colores de modulo en tablero IT y sidebar minimo en tablero de modulo 2026-09-16 17:11:29 -03:00
Nurfog 9ee35fd713 style: portal IT con estilo grafico de inventario.sam (hero, Work Sans, tarjetas) 2026-09-16 16:47:40 -03:00
Nurfog 6fd9e8a615 feat: color identidad por modulo en indice sam.devops con asignacion autoritaria 2026-09-16 16:36:56 -03:00
Nurfog f9e0887f10 feat: página Correo con claves de módulos + lint en cero 2026-09-16 11:31:28 -03:00
Nurfog 1bf1e12273 docs: requisito ARG NEXT_PUBLIC_API_URL en Dockerfile propio 2026-09-10 13:14:35 -03:00
Nurfog 6b0b82fee8 fix: título de tarjeta abre la app real, tablero como acción secundaria 2026-09-10 12:50:35 -03:00
Nurfog 16940d5f99 feat: verificación post-importación con aviso detallado de fallas 2026-09-10 12:17:37 -03:00
Nurfog 33d2cc2bcb docs: README real del portal (rutas, auth IT, env, deploy) 2026-09-10 10:53:36 -03:00
Nurfog 4a23ca63fe feat: upload muestra advertencias de config de datos 2026-09-10 10:41:10 -03:00
Nurfog d167c0404e fix: sidebar colapsado sin textos fantasma + logout visible 2026-09-09 16:26:13 -03:00
Nurfog 57a83cd393 feat: login con idUsuario 2026-09-09 16:20:24 -03:00
Nurfog d1d8bf03ae fix: tarjeta login centrada vertical y horizontal (balance div) 2026-09-09 16:09:38 -03:00
Nurfog 4890bffebd fix: tarjeta login centrada vertical y horizontal 2026-09-09 16:07:53 -03:00
Nurfog efbde27dcc fix: login identico al legacy (header USUARIO|CLAVE, inputs apilados) 2026-09-09 16:02:18 -03:00
Nurfog 1783e7d6aa feat: login identico a ventas/login legacy (sidenav solido, card, USUARIO/CLAVE) 2026-09-09 15:52:23 -03:00
Nurfog 91b0220e46 fix: it.sam/ exige sesion antes del rewrite 2026-09-09 15:44:34 -03:00
Nurfog c6a629cf7b fix: allowlist acepta correos sin hash (valida backend) 2026-09-09 15:37:55 -03:00
Nurfog 1ec2edc99b feat: login IT contra backend it-login + allowlist 2026-09-09 15:26:01 -03:00
Nurfog 57b64af1ba feat: login IT con allowlist (scrypt+HMAC) + middleware protege tablero/gestion 2026-09-09 14:30:27 -03:00
Nurfog 08bf7254a1 feat: upload con kind/context/visible + toggle visible ya estaba 2026-09-09 11:36:32 -03:00
Nurfog 222fdac54d feat: kind backend/frontend + visible con toggle en gestion 2026-09-09 11:27:39 -03:00
Nurfog 3d9685adeb feat: upload dentro de la plantilla SamShell (sin sidenav propio) 2026-09-09 10:36:23 -03:00
Nurfog 70df8e95a9 feat: app Portal IT + /m/portal redirige al tablero IT 2026-09-09 10:06:41 -03:00
Nurfog 39cb4ec89a feat: tarjeta portal lleva al tablero IT (boardHref shell) 2026-09-09 10:02:12 -03:00
Nurfog 23df440b79 feat: sidebar IT con acciones reales (agregar/actualizar/eliminar + proxy deployer) 2026-09-09 09:54:53 -03:00
Nurfog e20e9d6657 feat: tablero por modulo funcional (estado+carga+funciones en sidebar) 2026-09-09 09:44:58 -03:00
Nurfog a209133e43 feat: indice solo modulos integrados (sin backend/gestionar) 2026-09-08 17:28:30 -03:00
Nurfog 3deed48c7b feat: indice limpio (sidenav sin botones, sin aviso de vacio) 2026-09-08 17:26:41 -03:00
Nurfog 4dda7275fd feat: indice solo con aplicaciones subidas (fuera accesos legacy) 2026-09-08 17:18:00 -03:00
Nurfog 347d8510b4 feat: indice estilo lanzador sam.norteamericano.cl, sidebar solo en IT + rewrite it.sam 2026-09-08 17:10:44 -03:00
Nurfog af638d4154 feat: sidebar de aplicaciones + landing IT por hostname (it.sam) 2026-09-08 17:03:52 -03:00
Nurfog 3949224d94 feat: tablero de gestion con graficas de estado y carga por aplicacion 2026-09-08 16:56:11 -03:00
Nurfog 646a3bf628 feat: seccion SAM con accesos legacy sam.norteamericano.cl (reemplazados al integrar) 2026-09-08 16:45:57 -03:00
Nurfog 66ed027043 feat: categorias de integracion (pagina-web/sam/profesores/otras-apps) + badge prod/dev 2026-09-08 16:29:01 -03:00
Nurfog 3787152ca0 feat: secciones configurables del indice (apps/system, manifiesto MODULE_SECTION) 2026-09-08 16:21:23 -03:00
Nurfog 5c6d6bc46e fix: snapshot estable en store del indice (evita re-renders infinitos) 2026-09-08 16:11:44 -03:00
Nurfog d30374729c feat: index SAM con tableros por modulo (SamShell Academico + sidebar de funciones API) 2026-09-08 16:05:33 -03:00
Nurfog 6d30e1c274 feat: auto puerto/subdominio y ejemplo https://git.norteamericano.cl/user/mi-proyecto.git 2026-09-08 14:32:48 -03:00
Nurfog 7691c01ff1 feat: portal SAM - Next.js 15 + Bootstrap, integración con deployer API 2026-09-08 14:06:40 -03:00
Nurfog 229cbd074a Initial commit from Create Next App 2026-09-08 13:59:21 -03:00