Files
rpg-companion-sillytavern/src/systems
Lucas 'Paperboy' Rose-Winters 88ba0a76ab fix: add comprehensive error handling to Present Characters HTML building
PROBLEM (from Salixfire's debug logs):
- Parser successfully extracted 5 characters
- Log showed complete characters array
- Log stopped abruptly before "✓ HTML rendered to container"
- This indicates exception thrown during HTML building (lines 217-281)

DIAGNOSIS:
- Parsing works perfectly (5 characters extracted)
- Code crashes somewhere in the HTML building loop
- User sees placeholder because exception prevents HTML from rendering
- No error logs because crash happens silently

LIKELY CAUSES:
- getGroupMembers() throwing exception
- Character avatar lookup failing
- getSafeThumbnailUrl() failing
- Missing null checks

SOLUTION:
Added comprehensive error handling and debug logging:

1. Added logging before HTML building starts
   - "Starting HTML generation for N characters"
   - This confirms code reaches HTML building phase

2. Wrapped each character in try-catch
   - Logs each character being processed: "Building HTML for character 1/5: Lady Julia"
   - Prevents one character error from crashing entire function
   - Code continues with other characters even if one fails

3. Added detailed avatar lookup logging:
   - "Looking up avatar for: {name}"
   - "In group chat, checking group members..."
   - "Group members count: N"
   - "Found avatar in group members/all characters/current character"
   - Shows final avatar URL (first 50 chars)

4. Wrapped getGroupMembers() in try-catch
   - Catches group-specific errors
   - Logs error but continues with regular character lookup

5. Added success/error logging for each character:
   - "✓ Successfully built HTML for {name}"
   - "✗ ERROR building HTML for {name}: {error.message}"
   - Logs full error stack for debugging

6. Added completion log:
   - "Finished building all character cards"
   - Confirms loop completed successfully

EXPECTED OUTCOME:
Next debug log from Salixfire will show EXACTLY:
- Which character is causing the crash (if any)
- What operation is failing (avatar lookup, HTML building, etc.)
- Full error message and stack trace
- Whether code completes or crashes

This will allow us to identify and fix the root cause.

Files changed:
- src/systems/rendering/thoughts.js: Added try-catch blocks and comprehensive logging
2025-10-22 09:50:59 +11:00
..