Skip to content

Conversation

@naglepuff
Copy link
Collaborator

@naglepuff naglepuff commented Dec 23, 2025

About this Pull Request

This pull request's base branch is vetting-workflow. That base branch will be the target for vetting-related PRs until it makes sense to merge the entire feature into the main branch.

Changes

Fix #277

This PR adds vetting-related settings and enables users to make file-level annotations as "submitted" (one per file). This is to support vetting workflows, such as the round of community vetting of data that will take place in early 2026.

Issue #277's requirements are all met by this PR:

Add a Mark Complete / Submit action for the current user on the current file.

This is done at the annotation level. When the mark_annotations_completed_enabled setting is turned on, the file annotation editor contains a new button called "Submit." Clicking this button will make that annotation as submitted. Each user can submit up to one annotation per recording. Once an annotation is submitted, it cannot be unsubmitted, and no other annotations can be submitted for that recording.

image
After marking complete, the reviewer should still be able to reopen the file (for comparison), but it remains clearly marked complete.

Nothing in the PR filters recordings based on whether or not the current user has submitted an annotation for the recordings on the front end. That can be relegated to future work. For now, a new column has been added to the recordings view that indicates with a check mark or cancel icon whether or not a user has submitted an annotation for that recording. This is only visible when the mark_annotations_completed_enabled setting is turned on.

image
Store per-user per-file completion state: Not Completed vs Completed.

This can be determined simply by filtering for a given user and submitted flag on a recording's associated file annotations.

TODO

  • Indicate which files are reviewed (have submitted applications) in sidebar view
  • Add screenshots

@naglepuff
Copy link
Collaborator Author

@BryonLewis FYI I plan to do vetting work in a base feature branch. I'll do my best to break it into reasonable chunks, which will all be merged into vetting-workflow before the entire thing is merged into main. This way we don't have an incomplete set of vetting tools in main, but changes can be reviewed in smaller PRs.

@naglepuff naglepuff force-pushed the issue-275-vetting-settings branch from d353182 to aa57d87 Compare December 23, 2025 20:51
@naglepuff naglepuff linked an issue Dec 23, 2025 that may be closed by this pull request
@naglepuff naglepuff marked this pull request as ready for review December 29, 2025 16:31
@naglepuff naglepuff requested a review from BryonLewis December 29, 2025 16:31
@naglepuff naglepuff force-pushed the issue-275-vetting-settings branch from ac7cfd7 to 3f88c06 Compare December 29, 2025 16:39
@naglepuff naglepuff changed the title Implement Vetting Workflow Allow Users to Submit Annotations Dec 29, 2025
@naglepuff naglepuff mentioned this pull request Dec 29, 2025
2 tasks
Copy link
Collaborator

@BryonLewis BryonLewis left a comment

Choose a reason for hiding this comment

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

Everything seems to behave properly in my quick testing. Only question was regarding the deletion of annotations after they have been submitted and that possibily being a work around from the multiple submissions or changing the submission afterwards.

@naglepuff naglepuff force-pushed the issue-275-vetting-settings branch from cca7fc4 to b004a75 Compare December 30, 2025 16:44
@naglepuff naglepuff requested a review from BryonLewis December 30, 2025 16:44
Copy link
Collaborator

@BryonLewis BryonLewis left a comment

Choose a reason for hiding this comment

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

Just a minor thing about the error when denying permission on deletion. Not required.

@naglepuff naglepuff merged commit a3feff3 into vetting-workflow Dec 30, 2025
4 checks passed
naglepuff added a commit that referenced this pull request Jan 16, 2026
* Allow Users to Submit Annotations (#281)

* Add settings for vetting

* Model submission status of recording annotations

* Add endpoint to get current user

* Show recording submission status in table view

* Don't filter out noise

The model can predict noise, so sorting it out of the species list can
lead to problems when loading/displaying that value in a list.

* Add endpoint to submit file-level annotations

* Allow submitting file annotations in interface

* Squash migrations

* Indicate when a file has been reviewed

* Format

* Show the current user's submitted label in sidebar

* Disable deletion for non-admin vetters

* Make 403 message more descriptive

* Vetting progress UI (#293)

* Add settings for vetting

* Model submission status of recording annotations

* Add endpoint to get current user

* Show recording submission status in table view

* Don't filter out noise

The model can predict noise, so sorting it out of the species list can
lead to problems when loading/displaying that value in a list.

* Add endpoint to submit file-level annotations

* Allow submitting file annotations in interface

* Squash migrations

* Indicate when a file has been reviewed

* Format

* Show the current user's submitted label in sidebar

* Disable deletion for non-admin vetters

* Make 403 message more descriptive

* Show progress bar for submitted recordings

* Enable showing/hiding submitted recordings

* Toggle submitted recordings in sidebar

* Fix submission bug

* Navigate through unreviewed files (#294)

* Add settings for vetting

* Model submission status of recording annotations

* Add endpoint to get current user

* Show recording submission status in table view

* Don't filter out noise

The model can predict noise, so sorting it out of the species list can
lead to problems when loading/displaying that value in a list.

* Add endpoint to submit file-level annotations

* Allow submitting file annotations in interface

* Squash migrations

* Indicate when a file has been reviewed

* Format

* Show the current user's submitted label in sidebar

* Disable deletion for non-admin vetters

* Make 403 message more descriptive

* Show progress bar for submitted recordings

* Enable showing/hiding submitted recordings

* Toggle submitted recordings in sidebar

* Fix submission bug

* Add button to go to next unreviewed file

* Add function to get next unreviewed recording

* Navigate between unreviewed files

* Display a message when there are no files to review

* Reset selected annotation when recording changes

* Show a user their submitted labels (#295)

* Show submission status and label in sidebar

* Show user submitted label in Recordings view

* Hide detailed metadata in vetting mode (#296)

* In vetting mode, hide detailed metadata fields

* Hide annotation summary in vetting mode

* Show GRTS cell bounding box for vetters

* Indicate pending submissions

* Update title for pulse annotation column

* Hide "my recordings" if non-admins can't upload (#298)

* Hide "my recordings" if non-admins can't upload

* Add missing semicolon

Co-authored-by: Bryon Lewis <[email protected]>

* Hide progress bar for my recordings when needed

---------

Co-authored-by: Bryon Lewis <[email protected]>

* Allow users to add reference materials (#297)

* Allow users to add reference materials

* Model vetting details per user

* Update vetting details from front end

* Use separate component for reference materials

* Add length check and test to API layer

* Swap position of close/save for consistency

* Use correct max length value for vuetify rule

Co-authored-by: Bryon Lewis <[email protected]>

---------

Co-authored-by: Bryon Lewis <[email protected]>

* Vetting workflow feedback (#301)

* Make return type compatable for column definition

* Add scale widget to location map

* Fix casing for kHz

* Fix scrolling in spectrogram sidebar

* Add tooltip to submission status

* Ensure configuration is loaded before column check

* Remove unused setting and remake migrations

* Use tooltip in shared list

---------

Co-authored-by: Bryon Lewis <[email protected]>
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.

[Vetting] Add “Mark Complete / Submit Review” per file (per user)

2 participants