ProjectSidewalk / SidewalkWebpage

Project Sidewalk web page
http://projectsidewalk.org
MIT License
83 stars 24 forks source link

Audit task flags for fine grained label handling implemented and controllable through Admin dashboard. #3507

Closed davphan closed 4 months ago

davphan commented 7 months ago

Resolves #2508

Right now, the only way a user's tasks and labels can be marked as lower quality is by marking the entire user as a "low quality user." This presents the issue that users whose labels get better over time will still be marked as low quality, making all of their new good labels useless, or being marked as high quality and their bad labels will be used when they shouldn't be. This also limits the options we have for marking user audits as either high quality or low quality.

The addition of task flags allows an Admin to manually derive when a user's tasks improve in quality and mark older tasks as low quality, meaning a user can continue making meaningful contributions even if their earlier performance was not up to par. New flags, "incomplete" and "stale", were also incorporated, which increase the options for managing user tasks by having different effects on the task's re-audit, validation, clustering, and leaderboard effects. The effects and differences of each flag listed below:

Flag Name Re-audit? Include in Clustering Validate Include in Dashboard Include in Leaderboard Notes
Incomplete The labels placed on the street were good, but a lot of labels were missed (false negatives)
Low Quality Street was otherwise audited poorly
Stale To be applied automatically in the future to old data, but can be applied manually now.
Before/After screenshots (if applicable)

Admin User GSV Label View: image

Admin User Page (under "General Info and Stats") image

Testing instructions
  1. Sign in as an Admin account. Go to the Admin dashboard, then the "Users" tab on the left.
  2. Select a user, preferably the top user with a lot of audits.
  3. Scroll down to the "Set Flags by Date" section.
  4. Click either of the "Set Flags" buttons. This will apply the specified flag to all tasks started before the current date (so all tasks).
  5. Scroll up to the label map. Click on a label and scroll down to the "Manually Change Task Flags" section.
  6. Check that the button for the flag(s) you modified in step 4 are red, indicating they are applied.
  7. Click the buttons to manually change the flag of the task that the label is in.
Things to check before submitting the PR