Skip to content

merge dev into stage#112

Merged
aditya-arcot merged 6 commits intostagefrom
dev
Mar 28, 2026
Merged

merge dev into stage#112
aditya-arcot merged 6 commits intostagefrom
dev

Conversation

@aditya-arcot
Copy link
Copy Markdown
Member

No description provided.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR merges dev into stage with updates to exercise naming semantics (case-insensitive uniqueness), exercise list ordering (custom vs system), and client UI changes to support viewing system exercises in a read-only dialog.

Changes:

  • Make Exercise.name case-insensitive (Postgres CITEXT) and add an Alembic migration to enable the citext extension + alter the column type.
  • Update exercise query ordering to group custom vs system exercises and adjust tests accordingly; update updated_at when only muscle groups change.
  • Client: add “view” mode for system exercises, make table columns responsive via per-column header/cell class meta, and tweak action icons/columns.

Reviewed changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
server/app/models/database/exercise.py Switch Exercise.name to CITEXT for case-insensitive behavior.
server/app/migrations/versions/2026_03_27_2337-e87490ac7ad5_change_exercise_name_to_case_insensitive.py Create citext extension and alter exercises.name to CITEXT.
server/app/services/exercise.py Force updated_at to change when only muscle group associations change.
server/app/services/utilities/queries.py Change exercise ordering to group custom/system exercises.
server/app/tests/services/exercise/test_update_exercise.py Add coverage for “only muscle groups updated” and adjust name-conflict case expectations.
server/app/tests/services/exercise/test_get_exercises.py Update ordering assertions to expect custom-before-system grouping.
server/app/tests/services/exercise/test_create_exercise.py Update name-conflict test to validate case-insensitive conflict.
server/app/tests/services/_utilities/queries/test_query_exercises.py Update query ordering test to validate custom-before-system grouping.
server/app/tests/api/exercise/test_update_exercise.py Adjust API name-conflict test for case-insensitive matching.
server/app/tests/api/exercise/test_create_exercise.py Add API test assertion that different casing still conflicts.
client/src/components/exercises/ExercisesTable.tsx Add view action for system exercises; responsive cell rendering; remove Updated At column.
client/src/components/exercises/ExerciseFormDialog.tsx Add view-only mode + last-updated display; disable editing/submission in view mode.
client/src/components/data-table/DataTableViewOptions.tsx Export column meta type and add header/cell class hooks.
client/src/components/data-table/DataTable.tsx Apply header/cell class meta to support responsive column hiding.

@aditya-arcot aditya-arcot merged commit 6871511 into stage Mar 28, 2026
4 of 5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants