74f0ff4935e46c2e5139bbd263f241e5377e9195
Bug: previous logic advanced watermark to the latest session start_time including ongoing sessions. PostHog session_recordings filters by start_time, so once a session was 'seen' as ongoing the watermark moved past its start time and the session was never re-fetched after it ended. Today 4 auth sessions on /dashboard/vehicles/* and /dashboard/search (07:17-07:40 UTC) were lost this way. Fix: 1. ROLLING_LOOKBACK_MINUTES (default 60): every cycle queries date_from = min(watermark, now - 60min). Sessions that just finished get re-fetched regardless of watermark drift. Upsert dedupes. 2. Track earliestOngoingStart; cap watermark to (earliestOngoingStart - 1s) so subsequent cycles re-read that range. Also added GET/DELETE /api/insights/watermark for manual reset (used to trigger 24h backfill after this deploy). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Süper Panel
Internal admin panel — sp.semih.ai — Tailscale-only access.
Phase 0 skeleton: Next.js 16 + Better Auth (email/password + TOTP) + Prisma + Postgres + Redis. Deployed on Coolify, fronted by Traefik with Let's Encrypt (Cloudflare DNS-01).
See super-panel-prd.md for the full PRD.
Local dev
pnpm install
cp .env.example .env
# fill DATABASE_URL_PANEL, BETTER_AUTH_SECRET (32+ chars)
pnpm --filter @panel/web prisma:generate
pnpm dev
Production deploy
Pushes to main trigger Coolify deploy via webhook.
Deploy status
First production deploy: 2026-05-13. Live at https://sp.semih.ai (Tailscale only).
Description
Languages
TypeScript
99.2%
CSS
0.4%
Shell
0.2%
Dockerfile
0.2%