# Specification: Discussion Takes & Timeline Branching

## 1. Overview
This track introduces non-linear discussion timelines, allowing users to create multiple "takes" (branches) from a shared point in a conversation. It includes UI for managing these parallel timelines within a single discussion window and features a specialized synthesis workflow to merge ideas from multiple takes.

## 2. Functional Requirements

### 2.1 Timeline Branching (Takes)
- **Message Branching:** Add a "Split/Branch from here" action on individual discussion messages.
- **Tabbed Interface:** Branching creates a new "take," represented visually as a new tab within the same discussion session. The new tab shares the timeline history up to the split point.
- **Take Promotion:** Allow users to promote any specific take into an entirely new, standalone discussion session.

### 2.2 Take Synthesis Workflow
- **Multi-Take Selection:** Provide a UI to select multiple takes from a shared split point for comparison and synthesis.
- **Diff/Compressed Representation:** Develop a formatted representation (e.g., compressed diffs or parallel sequence summaries) that clearly highlights the differences between the selected takes.
- **Synthesis Generation:** Feed the compressed representation of the differences to an AI agent along with a user prompt (e.g., "I liked aspects of both, do C with these caveats") to generate a new, synthesized take.

## 3. Acceptance Criteria
- [ ] Users can split a discussion from any message to create a new "take".
- [ ] Takes are navigable via a tabbed interface within the discussion window.
- [ ] A take can be promoted to a standalone discussion session.
- [ ] Multiple takes can be selected and formatted into a compressed difference view.
- [ ] An AI agent can successfully process the compressed take view to generate a synthesized continuation.