Commit Graph

33 Commits

Author SHA1 Message Date
4eeba5a81e System messages show actor name, mentions as objects 2026-02-27 08:33:43 +01:00
a1854eb4f5 Fix: dedup task in onCreated callback (duplicate with WS task.created) 2026-02-27 07:26:52 +01:00
d5eaa13b21 Phase 1: streaming UI + thinking blocks in ChatPanel
- Agent streaming: real-time text deltas in chat
- Thinking/reasoning: collapsible block with agent's thinking process
- Tool call indicators: shows running/completed tools
- Streaming bubble with pulse animation while agent generates
- Message type updated with 'thinking' field
2026-02-27 06:57:51 +01:00
92db42113d Add WS heartbeat every 30s to keep connection alive 2026-02-26 10:21:33 +01:00
a948b2f6fb типизация фронтенд: убран дубликат MemberBrief, мёртвые slug params, typed WS events 2026-02-25 14:40:14 +01:00
6ea653dbb1 Обновлены TypeScript типы для соответствия unified схемам
- Добавлен интерфейс MemberBrief
- Обновлены существующие интерфейсы для 1:1 соответствия Pydantic моделям
- Исправлены типы type: string вместо union types для гибкости
2026-02-25 14:08:44 +01:00
16f11d6882 Строгая типизация: TypeScript интерфейсы 1:1 с Pydantic-схемами
- Добавлен MemberBrief для вложенных объектов (author, assignee, reviewer, uploaded_by)
- Task.assignee/reviewer: Member → MemberBrief
- Message.author: Member → MemberBrief
- Step: добавлены task_id, created_at
- Task: добавлены created_at, updated_at
- Member: добавлен is_active
- ProjectFile: uploaded_by теперь MemberBrief вместо string
2026-02-25 14:03:42 +01:00
9e6cc84965 fix: extract and send @mentions from chat messages 2026-02-25 13:31:31 +01:00
b150f25949 fix: system messages show 'System' instead of actor name 2026-02-25 12:00:39 +01:00
8f2c999245 fix: auth on uploads (401→login redirect), token in download URLs 2026-02-25 11:16:10 +01:00
f676329206 fix: rewrite ProjectFiles — remove alerts, add debounce, multi-upload, hover actions, proper icons 2026-02-25 10:37:47 +01:00
2586dc7e6a Implement ProjectFiles component
- Complete project files UI with file list, icons, search
- Upload files via drag & drop or file picker with optional description
- Preview images as thumbnails
- Edit file descriptions inline
- Download files by clicking filename
- Delete files with confirmation
- Show file size, mime type icons, uploader, upload date
- Dark theme consistent with app design
- File size formatting helper
- Support for all common file types with appropriate icons
2026-02-25 09:19:50 +01:00
1671352ef9 feat: project files tab — upload, search, preview, descriptions, drag & drop 2026-02-25 09:18:56 +01:00
66beca5308 feat: file attachments in chat — upload, preview, download 2026-02-25 06:17:17 +01:00
f4693e8f0b feat: @mention autocomplete in chat input + mention highlighting 2026-02-25 06:01:30 +01:00
1c832ff99f fix: author_slug → author?.slug в TaskModal 2026-02-25 00:15:08 +01:00
c7144328fa refactor: UUID-based member refs in API types and components
- Task interface: assignee_id/assignee, reviewer_id/reviewer, watcher_ids
- Message interface: author_id/author вместо author_slug
- API functions: assignTask использует assignee_id
- KanbanBoard: обновлен под новые поля задач
- TaskModal: assignee selection по ID вместо slug
- ChatPanel: отображение author через relationship
2026-02-25 00:13:36 +01:00
8df4179dd7 fix: мобильные кнопки Settings/Logout в header + дедупликация api.ts 2026-02-24 23:27:58 +01:00
1b93bd60c0 fix: remove duplicate removeProjectMember function 2026-02-24 23:21:28 +01:00
cd0f9a9d62 Add project members management UI in ProjectSettings 2026-02-24 23:19:57 +01:00
66c14d74c0 refactor: remove actor param — Tracker knows who from auth 2026-02-24 13:32:32 +01:00
9a1b7a8d57 feat: pass actor slug to all task updates (system messages show who did it) 2026-02-24 13:26:40 +01:00
44884d937c refactor: remove compact/collapsible chat mode — ChatPanel is fullscreen only 2026-02-24 13:22:46 +01:00
a01bfbfc40 fix: apply message background colors in fullscreen chat too 2026-02-24 13:21:19 +01:00
b95fb074b1 fix: use inline styles for message backgrounds (Tailwind purge issue) 2026-02-24 13:17:48 +01:00
2210b6ae9f feat: colored message backgrounds — yellow for system, green for agents 2026-02-24 12:32:56 +01:00
9b2026c5fa feat: persist active tab in URL (?tab=chat survives reload) 2026-02-24 10:32:55 +01:00
f4f09bfeee feat: infinite scroll — load older messages on scroll up 2026-02-24 10:30:47 +01:00
c96bd88f2a fix: deduplicate WS messages in ChatPanel + remove StrictMode 2026-02-24 10:15:12 +01:00
f9d0bfd3a3 fix: auto-logout on WS auth.error (forces re-login with valid JWT) 2026-02-24 09:38:31 +01:00
3a2a32a50e fix: restore all original components (KanbanBoard, ChatPanel, TaskModal, etc.)
Previous migration stubbed most components. Now properly ported from
Next.js with type-only imports and react-router-dom Link/navigation.
2026-02-24 09:33:04 +01:00
83bc168c30 fix: login endpoint path /api/v1/auth/login 2026-02-23 23:30:58 +01:00
1fa137b240 feat: initial Vite + React migration from Next.js
- Migrate from Next.js App Router to Vite + React Router
- Replace NEXT_PUBLIC_* env vars with VITE_*
- Convert all pages to React Router structure
- Remove BFF dependency, connect directly to Tracker
- JWT auth with query param support in WebSocket
- All components migrated with basic functionality
- Ready for production deployment
2026-02-23 23:28:21 +01:00