Changelog
What we’ve shipped recently. Caselaw moves fast — this page is the simplest way to see what’s changed.
26 April 2026
- New /tools/case-finder for instant fuzzy case-name lookup against the 711-case library.
- New /court-hierarchy diagram explaining civil, criminal, and tribunal courts of England & Wales.
- New qualification-specific landings: /oxford-ba-jurisprudence, /llb-revision, /sqe1-revision.
- Six more long-tail guides: judicial review grounds, offer & acceptance, frustration of contract, criminal causation, ECHR Article 8, negligence duty of care.
- New /press kit, /how-it-works, /contact pages.
- Stripe webhook DLQ admin viewer at /admin/dlq.
- Custom error and global-error boundaries with branded UX and digest reference.
- Loading skeletons for /case-library, /case-library/[id], /notes, /dashboard, /search.
- /checkout/success post-Stripe landing with next-step cards.
25 April 2026
- AI tutor: markdown rendering, citation auto-linkification, copy button on each response.
- /about /faq /security /accessibility trust pages with full schema and OG cards.
- Skip-to-main-content link for keyboard + screen-reader users.
- /api/health JSON probe + public /status page.
- /tools/oscola interactive citation generator.
- /glossary with 30+ Latin terms and DefinedTermSet schema.
- Six long-tail guides on ratio, mens rea, judgment-reading, precedent, vicarious liability, promissory estoppel.
- Self-serve account export and account delete (UK GDPR Art. 15 + Art. 17).
- Cron-lock helper + Postgres advisory-lock fallback table.
- Stripe webhook DLQ table.
- PWA manifest + apple-web-app metadata so caselaw is installable on phones.
- Typed trackEvent() analytics wrapper around Vercel Analytics.
- Dynamic OG cards via /api/og for case briefs and other detail pages.
- Visible breadcrumb component on case detail.
- Reading-time estimate on case briefs.
- Print stylesheet so case briefs print cleanly for annotation.
- /.well-known/security.txt and /humans.txt.
24 April 2026
- Pre-Oxford-launch security hardening: open redirect patched on auth callback, fail-closed AI rate limiter, CSP shipped, prod-mode unsafe-eval removed.
- Quiz and past-paper detail endpoints now require Bearer auth.
- Case detail page emits Article + BreadcrumbList + FAQPage JSON-LD; metadata via buildCaseMetadata.
- RLS lockdown on case_uri_for_against, case_uri_summary, search_synthesis, topic_hubs.
- FK ON DELETE CASCADE on user_stats and xp_log.
- Hardcoded admin email removed from src; client gates honour NEXT_PUBLIC_ADMIN_EMAIL.
- Nightly DB backup workflow under .github/workflows.