Production-readiness pass 2 — security, scoring trust, and your data rights
A full-codebase audit followed by remediation across security, AI cost controls, scoring integrity, and data rights. Scores are now deterministic and evidence-verified, and account deletion / data export are self-serve.
- Security
Server-side request forgery on website imports fully closed
URL imports now validate every resolved address at connection time (DNS rebinding and redirect tricks no longer work), follow redirects manually with re-validation, and cap response size.
- Security
Sign-in endpoints strictly rate limited
Magic-link sends are capped per IP at the NextAuth endpoint itself, closing an email-bombing bypass of the earlier limit.
- Security
Upload confirmation can only attach your own files
Storage paths are verified against your own upload prefix and real object sizes are re-checked server-side.
- Reliability
Identical pitches now score identically
All scoring AI calls run at temperature 0. Re-submitting the same deck and video produces the same scores — previously they could drift run to run.
- Reliability
Every quoted line of evidence is verified against your transcript
Quotes shown as "From your pitch" (vertebrae evidence, rewrites, component extracts, PL thesis evidence) are checked against what you actually said; anything unverifiable is dropped instead of shown.
- Reliability
PL Demo Day scoring is transparent about degradation
If the investment-thesis evaluation can't run, the report now says so explicitly instead of silently scoring without the Web3 Thesis Fit dimension. The dimension score is also derived from its section scores rather than the model's own aggregate.
- Reliability
Stuck analyses recover automatically
Double-clicks can no longer start duplicate pipelines, a failed queue send rolls your assessment back so you can retry, and an hourly reaper fails any run stuck over two hours instead of leaving an eternal progress bar.
- Added
Delete your account — for real
Settings → Account now has permanent account deletion (all files, analyses, and profile data, hard-deleted) and a one-click JSON export of everything we hold about you.
- Added
Avatar upload, reduce-motion, and assessment pagination
Profile pictures are live, the reduce-motion preference now actually reduces motion, and long assessment lists paginate.
- Fixed
Honest settings and privacy policy
Removed notification toggles that had no sender behind them; the privacy policy now discloses 90-day frame-sample retention and describes deletion accurately. Analytics only load after cookie consent.
- Operations
Dependency security updates
Next.js, jspdf, and the AWS SDK updated past their open advisories; per-user daily AI budgets added across all coaching and generation endpoints.