supermemory/apps
MaheshtheDev 3b0fc9c959 fix(web): authenticate and bound metered /api routes (#1589)
Cherry-picks #1579 and #1580 from @Sravanjangam (security audit #1578), plus improvements on top.

- `/api/og`, `/api/onboarding/extract-content` and `/api/onboarding/research` now verify the session against the auth backend; the middleware only checked that a cookie was present, so a forged cookie reached handlers that spend metered Exa/xAI quota.
- Bounds those routes: 2MB cap on fetched HTML, max 10 http(s) URLs per request, name/email length limits and a 60s timeout on the LLM call.
- De-duplicates URLs before calling Exa, and collapses whitespace in `name`/`email` so a newline can't forge extra prompt lines. Both adapted from @SEPURI-SAI-KRISHNA's #1528 and #1530.
- Deletes the unused, unauthenticated `account-status` route.

Verified locally: pre-fix `/api/og` returned 200 for a forged cookie, post-fix it returns 401. Five duplicate URLs collapse to two before reaching Exa, and a newline-laden `name` arrives as a single prompt line.

Supersedes #1528 and #1530.
2026-08-23 21:48:46 +00:00
..
browser-extension fix(browser-extension): run wxt prepare before type checking (#1557) 2026-08-19 19:23:52 +05:30
docs docs: historical backfill guide (#1474) 2026-08-14 20:46:21 +00:00
mcp fix(mcp): strip API extras from listMemories entries (#1539) 2026-08-19 14:05:52 -07:00
memory-graph-playground fix: add type checks for TypeScript workspaces (#1447) 2026-08-13 17:55:50 +05:30
raycast-extension feat: mobile responsive, lint formats, toast, render issue fix (#688) 2026-01-21 03:11:53 +00:00
web fix(web): authenticate and bound metered /api routes (#1589) 2026-08-23 21:48:46 +00:00