- Replace expandThreadId with expandRequest pulse pattern (seq counter) - Add draftPin, onCreatePointThread, focusedThreadId, onThreadDetailChange props - Lift expandedThreadId changes to parent via onThreadDetailChange callback - Draft pin comment input section shown above thread list - Thread detail collapse signal via expandRequest with null threadId - Pass thread object to onJumpToObject for point-aware navigation