docs: update documentation for P2.6 completion

Обновлена документация для отражения завершения задачи P2.6
(реструктуризация MessageInfo).

Изменения:
- CONTEXT.md: добавлен P2.6 в завершённые задачи Priority 2
- CONTEXT.md: обновлён статус Priority 2 (80%, 4/5 задач)
- CONTEXT.md: добавлена детальная секция "Последние обновления"
- CONTEXT.md: обновлён технический долг
- REFACTORING_ROADMAP.md: отмечен P2.6 как завершённый
- REFACTORING_ROADMAP.md: обновлён общий прогресс (41%, 7/17 задач)
- REFACTORING_ROADMAP.md: добавлено "Что сделано" для P2.6

Статус: Priority 2 - 80% (4/5 задач)
Осталась последняя задача: P2.7 MessageBuilder pattern

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Mikhail Kilin
2026-01-31 01:47:51 +03:00
parent 43960332d9
commit 5709fab9c3
2 changed files with 69 additions and 12 deletions

View File

@@ -236,11 +236,13 @@ pub type Result<T> = std::result::Result<T, TeletuiError>;
---
### 6. Группировка полей MessageInfo
### 6. Группировка полей MessageInfo ✅ ЗАВЕРШЕНО!
**Статус**: ЗАВЕРШЕНО (2026-01-31)
**Проблема**: `MessageInfo` имеет слишком много плоских полей (~15+).
**Решение**: Группировать в логические структуры:
**Решение**: ✅ Реализовано - группировка в логические структуры:
```rust
pub struct MessageInfo {
pub metadata: MessageMetadata,
@@ -276,10 +278,24 @@ pub struct MessageInteractions {
}
```
**Что сделано**:
- ✅ Созданы 4 структуры: MessageMetadata, MessageContent, MessageState, MessageInteractions
- ✅ Обновлена MessageInfo для использования новых структур
- ✅ Добавлен конструктор MessageInfo::new()
- ✅ Добавлены getter методы (id(), text(), sender_name(), и др.)
- ✅ Обновлены 14 файлов (~200+ обращений):
- ui/messages.rs: рендеринг (100+ изменений)
- app/mod.rs: логика приложения
- input/main_input.rs: обработка ввода
- tdlib/client.rs: обработка updates
- Все тестовые файлы
- ✅ Код компилируется успешно
**Преимущества**:
- Логическая группировка данных
- Проще добавлять новые поля
- Меньше параметров в конструкторах
- Логическая группировка данных
- Проще добавлять новые поля
- ✅ Улучшенная читаемость кода
- ✅ Меньше параметров в конструкторах (используется new())
---
@@ -626,17 +642,17 @@ tracing-subscriber = "0.3"
- [x] P1.1 — ChatState enum
- [x] P1.2 — Разделить TdClient
- [x] P1.3 — Константы
- [x] Priority 2: 3/5 задач (60%)
- [x] Priority 2: 4/5 задач (80%)
- [x] P2.5 — Error enum
- [x] P2.3 — Config validation
- [x] P2.4 — Newtype для ID
- [ ] P2.6 — MessageInfo реструктуризация
- [x] P2.6 — MessageInfo реструктуризация
- [ ] P2.7 — MessageBuilder pattern
- [ ] Priority 3: 0/4 задач
- [ ] Priority 4: 0/4 задач
- [ ] Priority 5: 0/3 задач
**Всего**: 6/17 задач (35%)
**Всего**: 7/17 задач (41%)
---