Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RFC: Support annotations in the UI #1587

Open
rien opened this issue Sep 19, 2024 · 1 comment
Open

RFC: Support annotations in the UI #1587

rien opened this issue Sep 19, 2024 · 1 comment

Comments

@rien
Copy link
Member

rien commented Sep 19, 2024

Note: this is an RFC with a suggested enhancement, it is not 100% we want this yet. More consideration is needed before starting implementation.

It would be useful to annotate certain elements of a report in order to come back to them later. For example: with programming exercises throughout the semester, one similar pair is often not enough to build a case. By flagging these submissions, teachers can go back to a report later to be reminded of what elements contributed to the suspicion.

How it would look like

I think we would like two types of annotations:

  • Tags (e.g. suspicious, AI-generated, innocent, ...) that allow easy searching, flagging and grouping of submissions
    • Initially I think we could keep this per submissions. One could also tag a pair by tagging one (or both) submissions of that pair.
    • There should also be support for bulk tagging using the tables. This would allow tagging a whole cluster as "plagiarism" at once.
  • Annotations on submissions. These would preferably support markdown to allow for proper formatting.
    • Annotating a whole submission
    • Annotating a specific line (or section) on a single submission
    • Annotating lines (or sections) in a pair of two submissions (e.g. "This function is copied")

In addition it would be useful to have an overview of all annotations with a quick link to the submission, pair or cluster.

Changes needed

This requires the annotations to be persistent in a way. As it might also be beneficial to also export these annotations elsewhere, we would need to expose this through some kind of interface.

  • API endpoints need to be added (/reports/{id}/annotations and /reports/{id}/tags) to create, read and edit annotations.
  • The UI needs to be updated to be able to add these annotations and send them to the API
  • Specifically the annotations on pairs should be designed with care: showing this properly feels like a challenge
  • The data tables should be able to search for tags, as well as search for, remove and bulk edit tags.
  • These features should only be enabled when running in server mode (not when running standalone)

Related issue: #552

@rien rien added enhancement New feature or request web UI Dolos web app labels Sep 19, 2024
@rien rien moved this to Needs discussion in Dolos Planning Sep 19, 2024
@rien rien removed the enhancement New feature or request label Oct 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Needs discussion
Development

No branches or pull requests

2 participants
@rien and others