Add handler-driven user block attach/detach for thread participants
The handler now automatically attaches user blocks for all handles found
in the thread before sending to the agent, and detaches them in a finally
block after processing completes.
- Add handle_to_block_label() to convert handles to block labels
- Add attach_user_blocks_for_thread() to attach/create user blocks
- Add detach_user_blocks_for_thread() to clean up after processing
- Wire into process_mention() with proper error handling
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>