Commit Graph

19 Commits

Author SHA1 Message Date
cede9fbfdf Fix: createTask uses project_id, CreateTaskModal accepts projectId 2026-02-27 09:39:11 +01:00
52be59dc9f UUID everywhere: all API calls use ID instead of slug
- Project API: project.id for all CRUD + files + members
- Member API: member.id for get/update/regenerate/revoke
- ProjectSettings: member selection by id
- ChatPanel/MentionInput: projectId prop
- AgentModal: agent.id for API, slug for display only
2026-02-27 09:37:28 +01:00
4eeba5a81e System messages show actor name, mentions as objects 2026-02-27 08:33:43 +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
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
8f2c999245 fix: auth on uploads (401→login redirect), token in download URLs 2026-02-25 11:16:10 +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
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
f4f09bfeee feat: infinite scroll — load older messages on scroll up 2026-02-24 10:30:47 +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