openhands
f6ad030c5b
Add EpicNext CMS foundation layer and fix critical security gaps
- Create src/lib/foundation/ (860 LOC, 9 files): typed action wrappers,
DbService with health checks, CSRF validation, safe redirects,
AsyncLocalStorage request tracing, branded types, reusable Zod schemas
- Migrate moderation.ts and user-settings.ts to foundation patterns
- Fix abuse-guard.ts: bound in-memory Maps with LRU eviction (was unbounded)
- Fix access-guard.ts: separate try/catch per check, log degradation
instead of blanket fail-open
- Replace raw redirect() calls with safeRedirect() in guard.ts and
permissions.ts to prevent open-redirect attacks
- Add CSRF validation to api-handler.ts for mutating methods
- Add canonicalizeFormData() utility for FormData input sanitization
2026-07-13 12:03:49 +02:00
..
2026-07-12 19:01:28 +02:00
2026-07-12 14:29:01 +02:00
2026-07-11 22:35:40 +02:00
2026-07-12 21:07:34 +02:00
2026-07-12 21:07:34 +02:00
2026-07-12 21:07:34 +02:00
2026-07-12 21:07:34 +02:00
2026-07-12 21:07:34 +02:00
2026-07-13 12:03:49 +02:00
2026-06-27 16:51:47 +02:00
2026-06-27 16:51:47 +02:00
2026-07-12 21:07:34 +02:00
2026-07-12 21:07:34 +02:00
2026-07-11 20:27:20 +02:00
2026-07-12 21:07:34 +02:00
2026-07-12 21:07:34 +02:00
2026-07-12 21:07:34 +02:00
2026-07-11 20:27:20 +02:00
2026-07-11 20:27:20 +02:00