valentyn-vb / valentyn-vb/Recap-Project-6
Add status filtering to Goals list
Open
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
Learning Companion - Goals list filtering by status
Add the ability to filter the Goals list view by status.
Tasks
- Add a status query parameter to the Goals list endpoint/view (e.g. ?status=in-progress).
- When no status is provided, default to showing all goals.
- Add UI controls (dropdown, tabs, or buttons) on the Goals list page to filter by planned / in-progress / done.
- Ensure filtering respects existing per-user scoping (a filtered list still only shows the current user's goals).
Acceptance criteria
- Visiting the Goals list with a status filter returns only goals matching that status, for the current user only.
- No filter selected shows all of the user's goals, regardless of status.
- Filter option is reflected in the URL (shareable/bookmarkable) or otherwise persisted across a page reload, whichever fits the framework's conventions.
- Tests cover: filtered results are correct, filter doesn't leak other users' goals, and default (no filter) behavior.
Notes for agent
- This depends on the Goal entity and base CRUD endpoints already existing (ticket #3) — do not start until that is status:done.
- Keep this as a small, focused change on top of the existing Goals list view/endpoint rather than reworking it.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Wait until ticket #3 is status:done, then start with the existing Goal entity, base CRUD endpoints, and Goals list view. Trace how the list request and current-user scoping work before adding the status parameter and controls. Add tests for filtered results, user isolation, and the unfiltered default, and confirm the selected filter survives reload through the URL or framework convention.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- full-stack
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100