SentinelEdge MX Attendance

Live — Vercel
Microsoft Teams Tab — Control de asistencia para técnicos de campo SentinelEdge MX · sentineledge-mx-attandace.vercel.app · Next.js 14 + supabase-js + n8n webhook + Vercel Cron + Teams SSO · Local: /home/ardepa/sentineledge-mx-attendance · Live
17
Done
🔄
0
In Progress
0
Blocked
📋
2
Backlog
📋 Backlog2
Configurar manifest.json con Azure App ID real
Reemplazar placeholders REPLACE_WITH_YOUR_DOMAIN y REPLACE_WITH_YOUR_AZURE_APP_ID con valores reales de Entra ID. Registrar app en Azure Portal como Single-page app con redirect URI de Teams.
InfraAuth
Subir manifest al Teams Admin Center
Empaquetar manifest.json + iconos en .zip y subir al Teams Admin Center del tenant SentinelEdge MX para habilitar el tab en Teams.
Infra
🔄 In Progress0
Vacío
⛔ Blocked0
Vacío
✅ Done17
Scaffold proyecto Next.js 14 + estructura de carpetas
Infra
Esquema DB — tabla tbmmxattendance en Supabase
Infra
lib/types.ts — AttendanceRecord + getButtonStates()
Feature
lib/timezone.ts — Phoenix timezone helpers
Feature
lib/attendance-helpers.ts — hoursDiff + round2 + parseAttendanceBody
Feature
lib/teams.ts — Teams SSO con dynamic import
Auth
lib/db.ts — pg Pool singleton (solo para cron)
Infra
API Route Handlers — action proxy + today
Feature
UI completa — app/page.tsx (dark-first, 6 botones, summary card)
Frontend
next.config.js — CSP con unsafe-eval condicional en dev
Security
public/manifest.json — Teams Tab manifest v1.19
Infra
Deploy Vercel — sentinel-edge-ai/sentineledge-mx-attandace
Infra
Fix: nombre de tabla attendance → tbmmxattendance
Infra
Refactor reads: pg → supabase-js (lib/supabase.ts)
Infra
Fix RLS: CREATE POLICY "anon_read_own"
Security
Fix fetchRecord: no sobreescribir state en sesión activa
Feature
Cron job nightly — /api/cron/compute-hours
FeatureInfra
📓 Daily Recaps