1.9 KiB
1.9 KiB
Progress
Goal
Reduce React console/runtime errors reported in browser logs, prioritizing crash-level issues.
Plan
- Identify source components from stack traces
- Fix crash-level runtime errors (
Select is not defined, invalid React DOM usage) - Fix high-noise compatibility warnings in touched components (
selectedon<option>,objectNameprop, legacy lifecycle names,cellspacing/cellpadding) - Run targeted checks and summarize remaining warnings
- Prevent browser-mode crash when video store calls native-only jamClient capture-resolution APIs
- Reduce additional high-noise UI warnings (
bind(this)in render,JamClassScreenlegacy lifecycle, missing row keys)
Notes
- Patched
JamTrackAutoCompleteto gracefully fall back whenSelectis unavailable. - Fixed
TeacherExperienceEditableListunmount lifecycle typo and invalid input markup. - Updated
WebcamViewerto use controlled<select>values instead ofselectedon<option>. - Added
ReactRailsUJS.findOrCreateRootcompatibility override inreact-init.jsto avoid repeatedcreateRootwarning path. - Did a targeted static validation via
rg/git diffreview; full browser/runtime test pass still needed. - Addressed browser/client-mode regression
context.jamClient.FTUEGetCaptureResolution is not a functioninVideoStore.onRefresh. - Added missing capture-resolution API stubs to
fakeJamClient.js(FTUEGetCaptureResolution,FTUEGetCurrentCaptureResolution,FTUESetCaptureResolution) and wired exports. - Hardened
VideoStoreandwebcam_viewerto guard optional capture-resolution APIs and degrade gracefully when unavailable. - Removed render-time
.bind(this)usage inChatWindow,FindSessionOpen, andSessionFilesBtnto suppress create-react-class autobind warnings. - Renamed
JamClassScreen.componentWillUpdatetoUNSAFE_componentWillUpdate. - Added explicit
keyprops for static onboarding rows inAccountOnboarderScreen.