- Wrap request.json() in try/except to return 400 on invalid JSON - Validate request body is a dict before accessing keys - Validate all names entries are strings, reject with 400 if not - Return 400 (instead of silently truncating) when names exceed 500 - Replace isMounted flag with AbortController in ViewerInfoPanel useEffect - Clear isLoadingCorePrompts in all early-return and abort paths - Add comment explaining Core Prompt selection algorithm Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>