- Auto-migrate deals table: old CHECK constraint ('pipeline','loi',...) → new
stages ('prospect','internal','initial_marketing','ioi','loi','closed')
Maps legacy values: pipeline→prospect, initial_review→initial_marketing,
due_diligence→ioi, final_negotiation→loi, dead→closed
- Add POST /deals/folders/reparent endpoint with circular-ref guard
- Child folders are now draggable with full drag support
- Drop onto top 40% of a folder → reorder at same level (existing behaviour)
- Drop onto bottom 60% of a folder → make dragged folder a child of target
- Root drop zone appears when dragging a subfolder: drop here to promote to root
- Visual teal outline on hover shows where folder will land
Add debounced search input in deal detail header.
HTMX-powered search across files, folders, and request items.
Returns categorized results with links.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add file_comments table and FileComment model.
Add comment icon per file that toggles inline comment panel.
Comments loaded via HTMX with add form, stored per file/deal.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add file upload with multipart form, local disk storage at data/uploads/.
Add file download with original filename and activity logging.
Add file delete (owner/admin only) with disk cleanup.
Add upload modal with folder selector and request item linking.
Add download and delete actions to file list.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add folder create, rename, delete, and reorder handlers.
Add New Folder modal to deal room detail with parent folder selector.
Add sort_order field to folders for drag-to-reorder.
Order folders by sort_order in folder tree.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add invites table, invite create/accept routes and handlers.
Add Team page with member list, invite modal with link generation.
Add invite accept page for new users to set name/password and join org.
Add Team nav item in sidebar.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Admin section accessible to owner/admin roles only
- Full CRUD for contacts with type filtering (buyer/internal/advisor)
- Full CRUD for deals with all fields (stage, size, dates, etc.)
- Full CRUD for users/profiles with role management
- Full CRUD for organizations
- Admin dashboard with entity counts
- Consistent dark theme matching existing UI
- Breadcrumb navigation throughout admin section
- Delete confirmation dialogs