Исправить блокеры аналитики после PR #35 #37

Merged
admin merged 2 commits from feature/analytics-fixes into main 2026-08-24 18:59:51 +00:00
Collaborator

Исправляющая ветка после revert PR #35. Требует сначала слить PR #36 (откат), затем этот PR.

Исправлено:

  • timeseries теперь ограничен исходными from/to даже внутри недельного/месячного бакета;
  • добавлен фильтр «Без категории» с NULL-сопоставлением;
  • добавлены integration assertions для partial period и uncategorized;
  • обновлены версии/changelog.

Версии: frontend 0.11.0, backend 0.10.1, shared 0.5.0.

Исправляющая ветка после revert PR #35. Требует сначала слить PR #36 (откат), затем этот PR. Исправлено: - timeseries теперь ограничен исходными from/to даже внутри недельного/месячного бакета; - добавлен фильтр «Без категории» с NULL-сопоставлением; - добавлены integration assertions для partial period и uncategorized; - обновлены версии/changelog. Версии: frontend 0.11.0, backend 0.10.1, shared 0.5.0.
agent added 2 commits 2026-08-21 03:13:35 +00:00
Author
Collaborator

Найдены блокирующие замечания:

  1. Фильтр «Без категории» по-прежнему не работает из UI для timeseries. AnalyticsPage строит base через ...(categoryId ? ...), поэтому выбранное значение 0 отбрасывается. Кроме того, в backend/src/routes/analytics.ts для /timeseries осталось categoryId: categoryId ? Number(categoryId) : undefined; categoryId=0 также превращается в undefined. Summary/by-category используют исправленную проверку, а timeseries — нет. Нужно передавать 0 во всех трёх вызовах и обработать его в route.

  2. Повторная проверка старого замечания о тестах неполная: добавлена только assertion для getSummary(categoryId=0). Нет проверок фильтра NULL в getByCategory и getTimeseries, а также нет проверки, что onlyConfirmed=true исключает некатегоризированную неподтверждённую операцию во всех трёх аналитических endpoint/service-функциях. Добавьте минимальные assertions для каждого результата.

  3. Изменён frontend/src/pages/AnalyticsPage.tsx, но версия frontend и changelog оставлены на 0.11.0. По правилам версионирования это пользовательское изменение требует patch bump (0.11.1) и корректировки заголовка changelog.

Найдены блокирующие замечания: 1. Фильтр «Без категории» по-прежнему не работает из UI для timeseries. `AnalyticsPage` строит `base` через `...(categoryId ? ...)`, поэтому выбранное значение `0` отбрасывается. Кроме того, в `backend/src/routes/analytics.ts` для `/timeseries` осталось `categoryId: categoryId ? Number(categoryId) : undefined`; `categoryId=0` также превращается в `undefined`. Summary/by-category используют исправленную проверку, а timeseries — нет. Нужно передавать 0 во всех трёх вызовах и обработать его в route. 2. Повторная проверка старого замечания о тестах неполная: добавлена только assertion для `getSummary(categoryId=0)`. Нет проверок фильтра NULL в `getByCategory` и `getTimeseries`, а также нет проверки, что `onlyConfirmed=true` исключает некатегоризированную неподтверждённую операцию во всех трёх аналитических endpoint/service-функциях. Добавьте минимальные assertions для каждого результата. 3. Изменён `frontend/src/pages/AnalyticsPage.tsx`, но версия frontend и changelog оставлены на 0.11.0. По правилам версионирования это пользовательское изменение требует patch bump (0.11.1) и корректировки заголовка changelog.
agent added 1 commit 2026-08-21 04:24:05 +00:00
Author
Collaborator

Повторный независимый review завершён. Предыдущие замечания исправлены:

  • categoryId=0 теперь сохраняется в frontend, summary/by-category и timeseries route;
  • добавлены проверки NULL-фильтра и onlyConfirmed для summary, by-category и timeseries;
  • partial period покрыт тестом;
  • версии frontend/backend/shared и changelog обновлены.

Сборки shared, backend и frontend проходят. Блокирующих замечаний нет.

Повторный независимый review завершён. Предыдущие замечания исправлены: - `categoryId=0` теперь сохраняется в frontend, summary/by-category и timeseries route; - добавлены проверки NULL-фильтра и `onlyConfirmed` для summary, by-category и timeseries; - partial period покрыт тестом; - версии frontend/backend/shared и changelog обновлены. Сборки shared, backend и frontend проходят. Блокирующих замечаний нет.
admin merged commit ce162855f9 into main 2026-08-24 18:59:51 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: admin/family_budget#37