Every meaningful change to the platform — features, fixes, and security work — in plain language. Newest first.
[01]Fix
Onboarding resilience pass
Stripe KYC and application-fee redirects now always return to the real domain you came from — defensive helper derives the URL from request headers, not a hardcoded env var.
Pitch deck upload shows a "VERA extracted from your deck" preview panel listing every field the AI pre-filled, so wrong autofills are spotted immediately instead of two steps later.
Silent extraction failures now throw an explicit retry message instead of falling through with empty fields.
Founder KYC status auto-polls every 8 seconds while pending — no more manual refresh needed.
Equity totals must add up to ~100% to advance past the team step (when any founder lists equity).
Consistency check on the review step has a 45-second ceiling so Submit can never hang on a slow AI call.
Common auth-route typos (/signin, /sign-in, /log-in, /sign-up, /register) now redirect rather than 404.
Pitch deck and founder video uploads now go through server-issued signed tokens, removing a class of browser-auth-vs-storage-RLS bugs.
[02]Feature
VERA upgrades — caching, formatting, extended thinking
Prompt caching is live across the facilitator, the strategic-advisor mode, and every Studio specialist agent loop. Repeated VERA prompts within a session now run ~90% cheaper on the cached prefix.
Number, currency, and date formatting are baked into VERA’s persona — outputs now match the platform’s visual style exactly.
Decision Pack generation now runs with extended thinking — Claude reasons through the dimensions before writing, materially improving analytical depth on the highest-stakes investor-facing artifact.
[03]Platform
Single source of truth for numbers and dates
New lib/format.ts canonical formatter set: currency (multi-currency, compact + full), number, percent, ratio, date (short/medium/long), datetime, relative time, bytes, months.
New display primitives: Currency, NumberValue, Percent, Ratio, DateValue, DateTimeValue, RelativeTime, Bytes, Months, Metric — all with hover-for-precise-value, tabular-nums, accessible markup.
Legacy helpers in lib/utils.ts now delegate to the canonical formatters, so every existing call site benefits without breaking imports.
[04]Security
Security hardening
21 row-level-security errors and 3 storage-bucket warnings closed across the database — every public-schema table now denies anonymous access by default.
Database password rotated end-to-end. Supabase API keys migrated from legacy JWT format to the new sb_publishable / sb_secret keys, with legacy keys disabled.
Leaked Password Protection enabled at the Supabase Auth layer (HaveIBeenPwned check on every signup).
Nine missing production env vars synced to Vercel — admin-side features (Resend emails, Stripe webhooks, signed storage URLs, etc.) that had silently degraded are operational again.
Secret-file patterns added to .gitignore so accidental credential dumps cannot be committed.
Context-aware atmospheres — business pages render in cyan / data-precision tone, social pages in green / community-warmth tone, with ambient gradient backgrounds.
Playwright test suite scaffolding (5 files, 137 cases) covering public pages, auth and redirects, API health, navigation links, console and accessibility errors.