- Add base: '/olivas/' to Vite config so assets resolve correctly
- Switch Apache DocumentRoot to /var/www/html with Alias for /olivas/
- Fix RewriteBase to /olivas/ for SPA routing
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Replace X-User-Id header auth with Azure AD JWT token validation.
Backend validates tokens via JWKS, frontend uses MSAL for login/token
acquisition. Adds logout button, 401 handling, and configurable
AZURE_AUTH_ENABLED toggle.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The pure Shannon entropy score penalized well-designed ads with multiple
intentional visual elements (e.g. hero product + text + logo scored ~8/100).
New composite score (0-100) weights four components:
- Peak Dominance (30%): strength of #1 hotspot vs rest
- Hierarchy Clarity (25%): monotonic intensity ordering
- Gaze Coherence (25%): smooth spatial gaze path
- Entropy Concentration (20%): sqrt-softened entropy
The raw entropy score is preserved as entropy_score for users who want it,
visible in the ScoreCard hover tooltip and PDF report.
Also adds auto-create DB tables on startup for fresh Docker deploys.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Delete button on AnalysisView header (red, with confirmation dialog)
- Trash icon on each analysis card in ProjectDetail grid
- useDeleteAnalysis hook with query invalidation
- Navigates back after successful deletion
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Replace bare score badge with rich ScoreCard component showing
color-coded score (green/amber/red), label, and hover tooltip
explaining what the 0-100 Attention Focus score means
- Add AI Design Effectiveness Score (1-10) from Claude alongside
qualitative insights, with score_reason explanation
- Fix image/png media type error by converting all images to PNG
before sending to Claude API
- Save ai_score and ai_score_reason to DB
- Display AI score badge in InsightsPanel with color coding
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Full-stack application for predicting where humans look in images using
DeepGaze saliency models. Includes heatmap overlays, gaze sequence prediction,
hotspot detection, AOI analysis, rule-based insights, optional Claude AI
design analysis, and professional PDF report generation.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>