miqa-phase1 icon indicating copy to clipboard operation
miqa-phase1 copied to clipboard

Add to scan metadata and/or notes every time a user reviews a scan

Open curtislisle opened this issue 4 years ago • 3 comments

Per Kilian/Jim on 4/28/21 meeting -

  • They currently have trouble always seeing who reviewed a scan. If the reviewer rates it 'bad', a note is generated, but if they rate it good or 'usable' then there is no record of who made that review.
  • It was suggested that MIQA always add to a metadata record on the scan every time a user reviews. This keeps provenance of the username and time a review happens. Kilian liked this idea, but said they have an additional constraint in the short term:
  • XNAT notes are limited to 255 characters. MIQA might want to implement a "ToXNAT" filter when writing the note out to the CSV that condenses the provenance to newest first and description before the date. For example, "focus loss on lateral; CL(04-28-21)" is better than having the CL(04-28-2021) first. XNAT only shows the first 10 characters of a note.
  • It was suggested that an additional column could be added to the CSV export that includes the complete metadata record, then Kilian could simplify and process how he wants to upload to XNAT in the short term. (This solution is favored by Curt because it is seems like it gives flexibility and requires a small (correct?) engineering effort.

curtislisle avatar Apr 28 '21 18:04 curtislisle

  • If the reviewer rates it 'bad', a note is generated

So far we don't ever generate notes, to my knowledge. But in order to make the "bad" button available, a reviewer has to add characters to the note field, which then become the first note for that scan.

If the previous reviewer left a note marking the image as good, that would be enough to enable the "bad" button too, which probably isn't the right behavior.

scottwittenburg avatar Apr 28 '21 19:04 scottwittenburg

If the previous reviewer left a note marking the image as good, that would be enough to enable the "bad" button too, which probably isn't the right behavior.

Yeah, I'm concerned about this potential regression.

It was suggested that an additional column could be added to the CSV export that includes the complete metadata record, then Kilian could simplify and process how he wants to upload to XNAT in the short term. (This solution is favored by Curt because it is seems like it gives flexibility and requires a small (correct?) engineering effort.

It's not too involved and we should move toward that longer term, but if we converted the column to something like a JSON list it might end up being more to maintain short term and more iteration than a quick fix on the note field. I lean toward quick-fixing the note field specifically for his use case and handling the more general export and adapter design in v2.

How about this implementation:

  • If a user presses "bad", a modal dialog comes up asking for a reason, which cannot be dismissed without typing in something. When dialog closes, a note text including time, user, reason, and that it's a "bad" state change is prepended to the note log.
  • If a user presses the other options, an automated note is prepended to the log with time, user, and the button pressed, with no prompt for a rationale.
  • If a user adds a note manually, it is prepended with time, user, and text.

One more note: Kilian indicated that for his use case he would like to see XNAT terms like "Usable" and "Questionable" instead of "Good" and "Bad".

Below is a potential log, where first line is a note, second is a Good button press, third is Bad button press that required a rationale.

Nah it's ok; AJ(2021-04-07) [Note]
AJ(2021-04-07) [Usable]
It's blurry; JB(2021-04-05) [Questionable]

jeffbaumes avatar Apr 28 '21 19:04 jeffbaumes

I like the note suggestion and concur that it is likely to be easier to add the note functionality than the metadata extra CSV column.

curtislisle avatar Apr 28 '21 23:04 curtislisle