Summary
Total Events: 44 toolbox crash events (Feb 23 - Mar 1, 2026)
Key Findings
- Most Common Error: TypeError in _getDebugTargetData (13 occurrences - 30%)
- Location: toolbox.js:1486 → isDebugTargetFenix → _getPickerAdditionalClassName
- Trigger: During toolbox initialization (open → _buildButtons → _buildPickerButton)
- Distribution: Primarily on Windows/aurora, but also nightly and beta
- Impact: Affects the picker button initialization
- Out of Memory Errors (8 occurrences - 18%)
- Packet Type: watchTargets (7) and watchResources (1)
- Location: Client-side in Front.js:404 during RDP requests
- Pattern: Occurs during toolbox opening when establishing target watchers
- OS: Evenly distributed across Windows, Darwin, Linux
- SecurityError (8 occurrences - 18%)
- Location: document-events.js:66 in the listen function
- Packet Type: All are watchResources
- Root Cause: Document event listener setup failing with security restrictions
- Pattern: Happens during resource watching initialization
- async-storage Errors (6 occurrences - 14%)
- Location: async-storage.js:100 in getItemOnError
- Pattern: All from same Darwin/aurora user (possibly single session)
- Timing: Clustered on Feb 26 between 13:23-13:34
- Other Errors:
- AbortError (2): watchTargets aborted
- InvalidStateError (2): Window global target actor in invalid state
- TypeError in watchTargets (1): Server-side watcher error
- Generic undefined errors (3): Various locations
Platform Distribution
- Windows: 23 (52%)
- Darwin/macOS: 15 (34%)
- Linux: 6 (14%)
Channel Distribution
- aurora: 31 (70%)
- nightly: 9 (20%)
- beta: 4 (9%)
Critical Issues to Address
- High Priority: Fix TypeError in _getDebugTargetData@toolbox.js:1486 - this is the single most common crash
- High Priority: Investigate out of memory errors during target watching
- Medium Priority: Handle SecurityError in document-events listener gracefully
- Low Priority: Investigate async-storage failures (may be environment-specific)
Recommendations
- Add null/undefined checks in toolbox.js:1486:17 before calling isDebugTargetFenix
- Implement memory limits or pagination for watchTargets to prevent OOM
- Add try-catch with fallback for SecurityError in document event listening
- Review async-storage error handling in async-storage.js:100