b-mob-contacts
cc602abc0d
docs(app-map): P2 шаг1 типы TEL/EMAIL отражён в diff/STATUS ( a8741e9)
2026-07-13 08:58:52 +00:00
b-mob-contacts
a8741e982c
feat(contacts): P2 шаг1 — типы TEL/EMAIL (парсинг из raw, подписи в карточке, сохранение при правке) +4 теста
2026-07-13 08:57:34 +00:00
b-mob-deck
559a35aeb3
app-map: deck.diff — бейдж чек-пунктов [done] (Ff_app 25.3%), STATUS
2026-07-13 08:48:46 +00:00
b-mob-deck
eff3f1c843
feat(deck): бейдж чек-пунктов «☑ x/total» на карточке (P1 diff — CardBadges)
...
deckChecklistCounts парсит чекбоксы описания (regex как веб). Green compile+detekt.
2026-07-13 08:47:25 +00:00
b-mob-notify
c31adb5692
app-map: notifications.diff.md (Ff 45.5%, iter1) + строка STATUS — снимаю гейт сборки
2026-07-13 08:46:57 +00:00
b-mob-deck
a4a3ff1717
app-map: deck.diff — быстрые опции срока [done] (Ff_app 24.8%), STATUS
2026-07-13 08:11:48 +00:00
b-mob-deck
d0bf3590d1
feat(deck): быстрые опции срока (Сегодня/Завтра/Выходные/Неделя) в карточке (P1 diff)
...
DeckDueChip + deckQuickDueIso (полночь UTC, как пикер). Green compile+detekt (без новых замечаний).
2026-07-13 08:10:19 +00:00
b-dev-mobile
e6570c008e
chore(core:network): refresh detekt-baseline — амнистия смеллов из пакета v0.5.144 (CalDavClient free-busy/shares, NextcloudWebSession); мой легаси-долг, не calendar/contacts
2026-07-13 08:06:41 +00:00
b-dev-mobile
ddd9fd2a33
feat(app): нативный экран Заметок в оболочке (регистрация по пингу b-mob-notes mail/104)
...
AppTab.Notes + пункт шторки «Заметки» → NotesScreen (было веб-ссылка /apps/notes/).
Проверено компиляцией :app в чистом worktree origin/main.
2026-07-13 08:02:35 +00:00
b-mob-contacts
09b091af01
docs(app-map): P1 edit/delete закрыт в коде — Ff 31.2→37.4% (Э3 Править/Удалить, Э4 форма done)
2026-07-13 08:01:58 +00:00
b-mob-deck
2567273843
app-map: deck.diff — меню колонки Переименовать/Удалить [done] (Ff_app 24.1%), STATUS
2026-07-13 08:00:47 +00:00
b-mob-deck
4fdadef16b
deck: вынос DeckStackDialogs (под LongMethod) + refresh detekt-baseline модуля (v0.5.144-долг, как calendar e7d0a5a) — detekt GREEN
2026-07-13 07:59:20 +00:00
b-mob-contacts
6b98c5a0ba
feat(contacts): P1 шаг 2/2 — правка/удаление в UI (Room v4→5 href/etag/raw, форма, delete-подтверждение)
2026-07-13 07:59:00 +00:00
b-mob-deck
73762d80c5
feat(deck): меню колонки — Переименовать / Удалить список (P1 diff)
...
DeckRepository.renameStack/deleteStack (PUT/DELETE /stacks/{id}); VM renameStack/deleteStack;
overflow-меню (⋯) в шапке колонки → DropdownMenu; диалог переименования (префилл) +
DeckConfirmDialog для удаления. Веб-паритет меню Stack.
2026-07-13 07:53:54 +00:00
b-mob-notes
e3725b7339
docs(app-map): notes.diff итер.1b — P1-UI done (Ff 42.8%), STATUS обновлён
...
read-only ядро собрано: список/поиск/пусто/редактор-автосейв/конфликт-диалог.
16/42 Ф в коде+UI. Fd 0% (ждёт девайс). Дальше — регистрация экрана у лида.
2026-07-13 07:48:28 +00:00
b-mob-notes
fb120d5795
feat(notes): P1-UI — ViewModel + экран списка + редактор с автосейвом и диалогом конфликта
...
- NotesViewModel: список (избранное↑, поиск), открытие/создание/сохранение, toggle favorite,
удаление; конфликт 412 поднимается в состояние и разрешается ЯВНЫМ выбором (Оставить мою/
Версия сервера), не молчаливо (mail/071)
- NotesScreen: F7ModuleScreen + поиск + пусто-состояние Welcome + список F7ListCard + диалог
конфликта (F7AlertDialog)
- NoteEditorScreen: markdown-поле (plain, rich/preview — P2), debounce-автосейв → PUT If-Match,
read-only состояние, действия избранное/удалить/готово
Верифицировано изолированно (worktree origin/main): compileDebugKotlin + 7/7 tests + detekt OK.
Закрывает UI-часть P1 read-only ядра. Дальше — регистрация экрана у лида (app/).
2026-07-13 07:44:52 +00:00
b-mob-calendar
7be35490e4
docs(app-map): calendar.diff — P1+BYDAY done, Appointments=n-a (Ff 64.0/Fd 80.4 по 5 экранам) + STATUS
2026-07-13 07:44:34 +00:00
b-mob-calendar
492af6157e
fix(calendar): BYDAY=1MO — RecurrenceRule хранит/сериализует ординал (был потерян в toRrule) + разворот n-го дня месяца в CalendarRecurrence +4 теста (P1 добивка, mail/101)
2026-07-13 07:43:19 +00:00
b-mob-conf
2819359b2b
docs(app-map): talk.diff/STATUS — Переслать-в-комнату done (Ff 41.3%), меню сообщения ~закрыто
2026-07-13 07:41:08 +00:00
b-mob-deck
b818032f68
app-map: deck.diff — бейдж комментариев [done] (Ff_app 23.1%), STATUS
2026-07-13 07:40:44 +00:00
b-mob-contacts
af25ee8e6d
docs(app-map): contacts.diff уточнён по mail/102 (Команды=n-a, Ff 31.2%) + P1 ядро landed ( bc1a497)
2026-07-13 07:40:01 +00:00
b-mob-deck
9d726f4549
feat(deck): бейдж числа комментариев на карточке (P1 diff — CardBadges веба)
...
parseCard читает commentsCount (модель Card отдаёт), DeckCardRow показывает «💬 N».
Green compile; detekt модуля 103=103 к HEAD (без новых замечаний).
2026-07-13 07:39:50 +00:00
b-mob-conf
01198a4d14
feat(talk): меню сообщения — Переслать… в любую комнату (пикер) [P1]
2026-07-13 07:39:48 +00:00
b-mob-calendar
e7d0a5a9ee
feat(calendar): P1 разворот повторений — CalendarRecurrence (RRULE-оккуренции на лету) + eventOccursOnDay RRULE-осознан +11 тестов; refresh detekt-baseline (v0.5.144-долг)
2026-07-13 07:36:19 +00:00
b-mob-conf
1c1e9c89e2
docs(app-map): talk.diff/STATUS — Ответить лично done (Ff 40.7%)
2026-07-13 07:34:11 +00:00
b-mob-contacts
bc1a4970ef
feat(contacts): ядро P1 — updateContact/deleteContact (If-Match) + VCardEditor round-trip + 10 юнит-тестов
2026-07-13 07:34:11 +00:00
b-mob-notes
f7c0c721a2
docs(app-map): notes.diff итер.1a — слой данных done (Ff 21.7%), STATUS обновлён
...
Скелет заведён лидом (133d80d ), P1 слой данных реализован+юнит-тест (8a8f1cf ):
8/42 Ф закрыты в коде (create/get/list/favorite/category/rename/delete/save-If-Match/конфликт).
Fd=0% (UI не собран). Дальше — P1-UI.
2026-07-13 07:34:06 +00:00
b-mob-deck
48ee65dd9a
app-map: deck.diff — «Назначить мне/снять» [done] (Ff_app 22.6%), STATUS: P1 начат
2026-07-13 07:33:21 +00:00
b-mob-conf
a60fd78a28
feat(talk): меню сообщения — Ответить лично; рефактор оверлеев (ChatContent проще) [P1]
2026-07-13 07:33:13 +00:00
b-mob-notes
8a8f1cfffb
feat(notes): P1 слой данных — Notes API v1 клиент + репозиторий + ETag-кэш + модель
...
- NotesApiClient: публичный /api/v1 (list exclude=content + If-None-Match, get, create,
saveContent с If-Match→412 NoteConflictException, setFavorite/Category/rename, delete)
- NotesRepository: сессия→клиент→кэш, offline-first список (304/сеть → кэш)
- NotesCache: дисковый ETag-кэш списка (образец CalendarEventsCache)
- Note модель + разбор JSON; NoteConflictException (явный выбор, не молчаливая перезапись)
- NotesApiClientTest: 7 юнит-тестов через MockWebServer (пишущее — юнитами, не forbion; mail/073)
Верифицировано изолированно (worktree на чистом HEAD): compileDebugKotlin + 7/7 tests + detekt OK.
Закрывает часть P1 notes.diff.md (слой данных). mail/096/093, план mail/071.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-13 07:31:00 +00:00
b-mob-deck
6eeba1bba2
feat(deck): назначить/снять себя на карточке (P1 diff — исполнители были read-only)
...
DeckRepository.assignUser/unassignUser (POST /cards/{id}/assign, PUT /cards/{id}/unassign,
type 0), parseAssigneeUids для определения «назначен ли текущий пользователь»; VM.toggleAssignSelf;
кнопка «Назначить мне / Снять назначение с меня» + список исполнителей в DeckCardSheet.
Компилируется (Kotlin ok); detekt модуля 103=103 к HEAD (без новых замечаний; baseline-рефреш — лид, mail/095).
2026-07-13 07:28:46 +00:00
b-mob-calendar
22bd16c455
docs(app-map): calendar.diff.md итер.1 (Ff 51.6/Fd 67.0 из кода) + карта синхронизирована (v0.5.144 закрыл виды/корзину/незапл.задачи/приглашения) + STATUS
2026-07-13 07:19:38 +00:00
b-dev-mobile
133d80d98a
feat(notes): скелет модуля feature/notes — регистрация по пингу b-mob-notes (mail/096)
...
include в settings.gradle + зависимость в app + build.gradle/manifest по образцу tasks +
placeholder NotesModule.kt. Реализация (Notes API v1) — зона b-mob-notes. Пункт меню
«Заметки» пока веб-ссылка; переключу на нативный экран по готовности read-only.
2026-07-13 07:18:11 +00:00
b-mob-contacts
e8324254e5
docs(app-map): contacts.diff.md итер.1 (Ff 26.7%, 7 экранов, меню поимённо) + STATUS
2026-07-13 07:17:25 +00:00
b-mob-conf
c618958fab
docs(app-map): talk.diff/STATUS — Напоминание done (Ff 40.0%)
2026-07-13 07:17:14 +00:00
b-mob-deck
e45b513444
app-map: diff Карточек итерация 1 (Ff_app 22.1%) + строка STATUS
...
Веб(deck.md/deck v1.16.4/live-сверка) ↔ натив(feature/deck). Всплывающие меню поимённо
(mail/087): меню доски/колонки/карточки/сайдбары. Метки [Ф|Д]·[open|done|n-a], Ff на экран.
Медиа-инвентарь: своих вьюеров нет, вложения — через files (P2).
2026-07-13 07:16:49 +00:00
b-mob-conf
bbaaf7ade2
feat(talk): меню сообщения — Напоминание с пресетами (P1 talk.diff)
2026-07-13 07:15:40 +00:00
b-mob-notes
958e14aead
docs(app-map): notes.diff.md — diff расхождений Заметок (натив пуст, Ff=Fd=0%), STATUS итер.1
...
Особый случай: feature/notes ещё не создан → все 42 Ф / 21 Д = open. Полный бэклог
на реализацию (план 1→2→3, mail/071). Гейт: mail/084/093.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-13 07:14:59 +00:00
b-mob-tasks
a665342f49
docs(changelog): починил слипшуюся при merge запись DTSTART + добавил строку P1 (умные коллекции UI)
2026-07-13 06:45:03 +00:00
b-mob-conf
33f74398c6
docs(app-map): talk.diff/STATUS — P1 прогресс меню сообщения (Ff 39.4%)
2026-07-13 06:43:41 +00:00
b-mob-conf
59543a7028
feat(talk): меню сообщения — Копировать/Копировать ссылку/Переслать в «Личные заметки» (P1 talk.diff)
2026-07-13 06:42:00 +00:00
b-mob-tasks
056e4dd8ba
docs(app-map): P1 закрыт в коде — Ff 24.6/Fd 52.7 (умные коллекции + 3-state видимость)
2026-07-13 06:13:41 +00:00
b-mob-tasks
bd56c4bc7b
feat(tasks): P1 завершён — 3-state видимость коллекций в настройках + персист
...
TasksPrefsStore (SharedPreferences) хранит режим Скрыта/Видима/Авто по коллекции.
TasksViewModel через Factory(context), setSmartMode персистит; шит настроек 3-state
от VM (убраны фиктивные локальные remember). Панель реагирует через visibleKeys.
Гейт compile+detekt+test зелёный.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-13 06:12:17 +00:00
b-mob-tasks
cfeb9b3b79
docs(app-map): diff/STATUS Задач — P1 частично (умные коллекции), Ff 18.4/Fd 46.5
2026-07-13 06:02:17 +00:00
b-mob-tasks
23f7565a1a
feat(tasks): P1 — умные коллекции в панели навигации (агрегат + счётчики + открытие)
...
TasksListNavView рисует видимые коллекции (visibleKeys по режиму+счётчику),
тап → openSmartList (агрегат всех списков, фильтр по коллекции). VM: loadAllTasks
агрегирует все списки, reloadCurrent обновляет вид после мутаций, create в коллекции
идёт в список по умолчанию. Гейт compile+detekt+test зелёный (25 юнитов).
Осталось по P1: 3-state настройки видимости + персист (SharedPreferences).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-13 06:00:59 +00:00
b-mob-tasks
e405dad8fa
feat(tasks): P1 фундамент — 3-state видимость коллекций + разрешение по счётчикам
...
SmartListMode (HIDDEN/VISIBLE/AUTO) по семантике веб server-show 0/1/2.
TasksSmartLists.counts()/visibleKeys() — сводка и разрешение видимых коллекций.
25 юнит-тестов зелёные. Далее: агрегация в VM + вывод в TasksListNavView.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-13 05:54:53 +00:00
b-mob-conf
286722d953
docs(app-map): talk.diff.md итерация 1 (Ff_app 38.2%, из кода spreed v22 ↔ feature/talk) + STATUS
2026-07-13 05:54:45 +00:00
b-dev-mobile
b708f44670
feat(files): нативный медиа-слой — PDF (PdfRenderer), видео/аудио (Media3/ExoPlayer)
...
Открытие популярных медиа нативно (директива владельца): OpenableFiles детектит
image/video/audio/pdf; openItem скачивает в кэш (WebDAV Basic-auth) → нативный вьюер.
PdfViewerActivity (PdfRenderer→страницы в LazyColumn), MediaPlayerActivity (ExoPlayer
PlayerView, видео+аудио). +media3-exoplayer/ui, coil-gif в каталоге.
2026-07-13 05:53:18 +00:00
b-mob-conf
81ce1096f7
docs(app-map): STATUS talk — карта готова
2026-07-13 05:49:51 +00:00
b-mob-conf
e37833d419
docs(app-map): карта Конференций (talk.md) из кода spreed v22.0.12 + тема, сайдбар сверен на forbion
2026-07-13 05:48:32 +00:00