{"slug":"zendesk-chat-analyzer","total":15,"limit":100,"offset":0,"since":null,"commits":[{"hash":"c5ed5c0","date":"2026-08-24 08:29:46 -0700","author":"steve","subject":"href-drill:exempt marker — not a browse-grid (Steve's exclusion-marker verdict)","body":""},{"hash":"307ab80","date":"2026-08-12 08:09:15 -0700","author":"Steve","subject":"chore: lint + refactor + escape live-feed HTML (XSS guard) + v1.0.0 (session close)","body":""},{"hash":"0cde498","date":"2026-08-11 12:00:14 -0700","author":"Steve","subject":"Add '💬 Go Live in Zendesk' button — opens agent console for real-time chatting (analytics stay here)","body":""},{"hash":"9fc32c4","date":"2026-08-11 11:52:42 -0700","author":"Steve","subject":"gitignore recoverable-leads.md (customer PII)","body":""},{"hash":"d73376a","date":"2026-08-11 10:07:41 -0700","author":"Steve","subject":"Add rule-based sentiment + urgency scoring (/bin/zsh local): grid columns + one-click 'unhappy'/'urgent' filters for priority follow-up","body":""},{"hash":"590979c","date":"2026-08-11 09:32:26 -0700","author":"Steve","subject":"Add CSV export of current filtered/arranged grid view (client-side, respects columns+filters)","body":""},{"hash":"0631d5f","date":"2026-08-11 08:58:58 -0700","author":"Steve","subject":"Clamp /api/recent HOURS to 1h..7d (abuse guard, Cody)","body":""},{"hash":"b6d80b4","date":"2026-08-11 08:57:57 -0700","author":"Steve","subject":"SECURITY: bind app to 127.0.0.1 (localhost-only) so nginx Basic Auth cannot be bypassed via :9967 (Cody-caught PII exposure)","body":""},{"hash":"83d1c2f","date":"2026-08-11 08:54:55 -0700","author":"Steve","subject":"Auto-refresh data.json on boot(if stale)+every 6h so deployed dashboard stays current","body":""},{"hash":"fd2c68c","date":"2026-08-11 08:44:43 -0700","author":"Steve","subject":"Token reads from env var (pm2) for Kamatera deploy","body":""},{"hash":"72e3487","date":"2026-08-11 08:36:15 -0700","author":"Steve","subject":"Add Live recent-activity feed: /api/recent endpoint + auto-refreshing feed (30s) with flags, relative time, agent, message + browsed product; window selector 6h/24h/3d","body":""},{"hash":"74e12d8","date":"2026-08-11 08:27:55 -0700","author":"Steve","subject":"Full data-grid: 19 columns, click-sort + drag-reorder + show/hide toggle + Reset, persisted to localStorage (per adjustable-columns rule)","body":""},{"hash":"b875bb5","date":"2026-08-11 08:22:22 -0700","author":"Steve","subject":"Add themes classification + brand extraction + theme/brand charts, hour×weekday heatmap, topic mind-map (vis-network); all click-to-filter","body":""},{"hash":"c3ce333","date":"2026-08-11 08:05:14 -0700","author":"Steve","subject":"Add missed-chats drill-down (clickable Missed KPI + filter) + SG geo-proxy test script","body":""},{"hash":"acdb19e","date":"2026-08-11 07:28:00 -0700","author":"Steve","subject":"Zendesk chat-history web viewer: KPIs, country/type/platform/agent charts, timeline, word clouds, searchable table","body":""}]}