feat(tasks): add Backlog view filter for tasks not assigned to a day
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 77/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- react, typescript
- Área
- frontend
Línea de trabajo
Empieza con TaskFlow.Web/src/pages/TasksPage.tsx, en especial con ViewFilter, matchesViewFilter y las fichas de vista existentes; después, lee TasksPage.test.tsx para seguir las pruebas de interacción de los filtros de la página. Añade la opción Backlog para que coincida con las tareas cuyo currentJournalDate sea null y verifica que se combine con los filtros existentes y actualice el recuento. El trabajo estará terminado cuando pasen las pruebas unitarias y de interacción solicitadas y la cobertura de líneas del frontend se mantenga en al menos un 80%.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Groomed 2026-10-28 — ready for implementation.
Waits for the monorepo move (#397). This changes the API, so it is built after the assistant moves into this repo and the MCP change ships in the same PR (checked by the integration and error-code tests).
Original Description
Summary
Add a Backlog option to the view filters on the Tasks page (TaskFlow.Web/src/pages/TasksPage.tsx). It shows every task that is not currently assigned to a journal day, so unplanned work is easy to find and triage.
Background
A task is "assigned to a day" when it is linked to a journal entry through TaskItem.CurrentJournalEntryId. The frontend exposes that date as currentJournalDate. A task with no currentJournalDate is in the backlog.
The existing view chips are All, Active today, Scheduled future, and Completed history. matchesViewFilter in TasksPage.tsx already switches on currentJournalDate, so this should be a new ViewFilter case rather than a new mechanism.
Acceptance criteria
- A Backlog chip appears in the existing view filter group on the Tasks page.
- Selecting Backlog shows only tasks where
currentJournalDateis null, meaning tasks not linked to any journal day. - Tasks linked to any journal day, past, today, or future, are excluded.
- Backlog combines with the status, project, and search filters the same way the other view chips do.
- The task count in the filter row reflects the Backlog filter.
- Unit tests cover the Backlog case in
matchesViewFilterand the chip interaction inTasksPage.test.tsx. - Frontend coverage stays at or above the 80% line threshold.
Out of scope
- Backend changes. The filter uses data the Tasks API already returns.
- Changing how tasks are assigned to days or how carry-forward works.
- Bulk-assigning backlog tasks to a day.
Open question
Should Backlog include completed tasks that were never assigned to a day? The literal reading ("not currently assigned to a day") includes them. The default is to include them unless the owner says otherwise.
User Story
As a TaskFlow user, I want a Backlog view filter on the Tasks page that shows tasks not assigned to any journal day, so that unplanned work is easy to find and triage.
Acceptance Criteria
- Given the Tasks page loads, a Backlog chip appears in the existing view filter group alongside All, Active today, Scheduled future, and Completed history.
- Given tasks with and without a journal day, selecting Backlog shows only tasks whose
currentJournalDateis null. - Given tasks linked to a journal day in the past, today, or the future, selecting Backlog shows none of them.
- Given Backlog is selected, the status checkboxes decide whether completed unassigned tasks appear. With Completed unchecked (the default), they are hidden. With Completed checked, they are shown.
- Given Backlog is selected, applying the status, project, or search filter shows only tasks that match Backlog and every applied filter.
- Given Backlog is selected, the task count in the filter row equals the number of tasks shown.
- Given Backlog is selected and no tasks qualify, the existing empty state appears.
- The test suite covers the Backlog case of
matchesViewFilterand the Backlog chip interaction inTasksPage.test.tsx, and frontend line coverage stays at or above 80%.
Edge Cases
matchesViewFilterfalls through todefault: return true, so a missingbacklogcase would silently behave like All. Tests should guard against this.matchesViewFilteris not exported. Direct unit tests need an export or a move tolib/, or the case can be covered through page tests. The team should pick one.- Deleting a journal day unassigns its tasks, so they reappear in Backlog (subject to the status checkboxes).
- A backlog child whose parent is assigned is promoted to a root row (
TasksPage.tsx:285-287). Decide whether that display is acceptable under Backlog. - The "No project" filter is a different concept from Backlog and must not be confused with it.
Out of Scope
- Backend changes. Filtering is fully client-side.
- Changes to how tasks are assigned to days, or to carry-forward.
- Bulk-assigning backlog tasks to a day.
- Changes to the existing view chips, including Active today's completed exclusion.
- Editing the duplicate copies under
.claude\worktrees\.... Changes targetC:\code\TaskFlow\TaskFlow.Web\srconly.
- Lenguaje dominante
- C#
- Estrellas
- 1
- Forks
- 0
- Merge medio
- 2 h 2 min
- PR fusionados (30 d)
- 98
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de nevridge/TaskFlow
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
Los mantenedores suelen responder en 1 día
-
tech-debt
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
Todos los issues de nevridge/TaskFlow
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
juandresrodca/AdminForge#54 ·
-
[辞書] C/C++のプリプロセッサ指令名を英字のままにするAbierto要トリアージ 辞書
Dificultad 1/5 1-3 horas Aptitud para principiantes 86/100
yksr-melt/Meltype#1625 · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
Docs typoAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
MonoGame/docs.monogame.github.io#328 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
space-wizards/RobustToolbox#7197 ·
Los mantenedores suelen responder en 1 día
-
documentation high priority
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
lachydotmcg/capri-desktop#201 ·
Los mantenedores suelen responder en 1 día