The customJsx v2 serialize path called parseRequestManifest which threw
on invalid JSON during React render (via getInput on every keystroke),
crashing the page with Next.js 'Unexpected error' because the form had
no error boundary.
- Make parseRequestManifest defensive (try/catch -> empty array)
- Wrap CustomWidgetForm in FormErrorBoundary (defense-in-depth)
- Add unit tests for invalid manifest inputs