Skip to content

Comments

feat: UI Support for Community Calibration Permission Broadening#625

Open
bencap wants to merge 2 commits intofeature/bencap/calibration-performance-improvementsfrom
feature/bencap/calibration-permission-upload-broadening
Open

feat: UI Support for Community Calibration Permission Broadening#625
bencap wants to merge 2 commits intofeature/bencap/calibration-performance-improvementsfrom
feature/bencap/calibration-permission-upload-broadening

Conversation

@bencap
Copy link
Collaborator

@bencap bencap commented Feb 24, 2026

This pull request implements several improvements and refactors related to calibration management and evidence source handling in the application. The main changes include renaming the "classificationSources" field to "evidenceSources" throughout the codebase, improving authorization logic for adding calibrations, and enhancing user experience by prompting users to add an email address when required. Additionally, the pull request introduces UI and error handling enhancements for calibration-related actions.

Calibration Source Renaming and Refactor:

  • Renamed all references to classificationSources to evidenceSources in components such as CalibrationEditor.vue, CalibrationTable.vue, and AssayFactSheet.vue, including data models, props, computed properties, and template bindings. This ensures consistency in terminology and improves clarity in the codebase. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]

Authorization and Permission Improvements:

  • Updated authorization logic to use a dedicated add_calibration permission rather than relying on update, both in the backend API calls and in UI logic, to more accurately reflect user capabilities for adding calibrations. [1] [2] [3] [4]

Email Prompt and Error Handling Enhancements:

  • Added the EmailPrompt component to calibration-related views (ScoreSetCalibrationsView.vue and ScoreSetView.vue), prompting users to add an email address if required before creating or editing calibrations. [1] [2] [3] [4] [5] [6]
  • Improved error handling to display a toast notification when a user attempts calibration actions without an email, including clear messaging and guidance on how to resolve the issue. [1] [2] [3]

UI and Usability Improvements:

  • Ensured that calibration-related actions and error prompts are only shown to users with the appropriate permissions and authentication status, improving the user experience and security. [1] [2]

Dialog and Modal Improvements:

  • Updated the EmailPrompt dialog to use a higher z-index and modal behavior for better visibility and focus when prompting users.

Allow any authenticated user to create calibrations on published score
sets (community calibrations), not just score set contributors/owners.

- Use backend's `add_calibration` permission action instead of deriving
  calibration access from the `update` permission
- Add EmailPrompt gate to calibration creation/edit dialogs so users
  without an email are prompted before proceeding
- Make EmailPrompt modal with z-index above calibration dialogs for
  proper stacking
- Handle 403 email-related errors on calibration save with descriptive
  toast messages
- Remove redundant `userIsAuthorizedToEditScoreSet` check on calibration
  edit button (backend handles this via per-calibration permissions)
- Rename `classificationSources` to `evidenceSources` across all
  components and schema types to match backend API rename
@bencap bencap requested review from jstone-dev and sallybg February 24, 2026 03:31
@bencap
Copy link
Collaborator Author

bencap commented Feb 24, 2026

UI support for VariantEffect/mavedb-api#666

@bencap bencap changed the title Feature/bencap/calibration permission upload broadening feat: UI Support for Community Calibration Permission Broadening Feb 24, 2026
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.

Broaden Score Calibration Create/Update Permissions

1 participant