94f279665cd307ba88e235955871ddf9a17e92db
The HYPOTHESES block was empty on most sessions because the only rules covered backend failure patterns (5xx + rage). Add 7 behavioral patterns derived from canonical custom events — these give the LLM analyzer concrete starting points instead of reasoning from raw timeline alone. Patterns (all conservative — fire only on clear evidence): 1. Catalog evaluated, no checkout (parts_panel_viewed>=3 + on upgrade page + !checkout_started) 2. Fresh trial + successful decode (happy onboarding) 3. VIN decode failure pattern (failures>=2 or fallback>=1) 4. Rage click on subscription UI (upgrade friction) 5. Cancel flow entered without resume (churn risk) 6. Trial urgency banner ignored (banner_viewed without CTA) 7. Search opened but no decode attempted (funnel drop)
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%