ncbo / bioportal_web_ui

A Rails application for biological ontologies
http://bioportal.bioontology.org/
Other
21 stars 2 forks source link

Implement subscribing to ontology update notification #305

Open alexskr opened 9 months ago

alexskr commented 9 months ago

New Feature Request: I would like to propose the addition of a ontology update notification subscription feature in the UI.

alexskr commented 9 months ago

relates to https://github.com/ncbo/bioportal-project/issues/291

syphax-bouazzouni commented 9 months ago

By Ontology update, do you mean a new submission? if this is the case there is already the submission process notification, sent each time we process a (new) submission.

alexskr commented 9 months ago

notifications about new submission would be ideal although BioPortal currently has ability to notify about PROCESSING of ontologies. This can achieve desired effect but is probably too noisy for users who wish to know when new submissions become available.

syphax-bouazzouni commented 9 months ago

That was what we were using in Agroportal, the Ontology admins (and us the portal admins) get emails like the one below when processed. image

But yes one more user-friendly would be better.

alexskr commented 9 months ago

this is a proposal to allow other non-admin OntoPortal users to get notified when an ontology they are interested in gets a new submission

jvendetti commented 9 months ago

What is the label "KB1 Mx:Features" that you've assigned to this ticket?

alexskr commented 9 months ago

it should be enhancement.

jonquet commented 9 months ago

We are targetting this in AgroPortal. We have now a new button "Watch" in the UI, a bit like in GitHub, that allow to "subscribe" to an ontollogy.

Capture d’écran 2024-02-06 à 18 39 36

Problem: the notificaitons (including getting an email when an ontology new submission has been added) does not work when someone subscribe. But the subscription mechanism is in place: Here is a screenshot of "My acocunt page"

Capture d’écran 2024-02-06 à 18 40 23

This issue is track on our side, @syphax-bouazzouni might point to where.

syphax-bouazzouni commented 9 months ago

This issue is track on our side, @syphax-bouazzouni might point to where.

https://github.com/agroportal/project-management/issues/260 and https://github.com/agroportal/project-management/issues/141

jvendetti commented 9 months ago

I support the notion of this feature, but I think it needs to be more clearly defined.

It's hard to separate the presence of a new submission and it's processing statuses. I don't think BioPortal should broadcast notifications to subscribers about a new ontology submission, unless that submission is successfully processed. Otherwise you have scenarios where users are notified of a new submission and navigate to BioPortal, only to be presented with Error Rdf. This could be confusing and potentially a bad user experience.

Additionally, how should partial processing be handled? Do we notify subscribers of a new submission if parsing succeeds but indexing fails? Or any of the other processing steps?

jvendetti commented 9 months ago

I'd like to point out the HRAVS ontology in BioPortal, because I think the activity there is relevant to this issue.

The HuBMAP project has a need to notify members when new versions of HRAVS become available. Since we don't offer that functionality currently in production BioPortal, they decided to use a workaround of entering a note every time a new submission is uploaded:

Screenshot 2024-02-07 at 1 51 00 PM

Members interested in new submission uploads subscribe to notes for this ontology, and receive email with content like the following when new notes are created:

A new note was added to Human Reference Atlas Value Set by hubmap.curator.

----------------------------------------------------------------------------------
Subject: Release 2.3.14

- Added 3 new value items for library preparation kit 
- Added a new value item for sequencing reagent kit 
- Added 2 new value item for preparation instrument kit 
- Added 1 new value item for oligo probe panel
----------------------------------------------------------------------------------

This HuBMAP need was the main impetus behind the 6.14.2 release, where I implemented several bugfixes in the Notes functionality.

All of this is to say that I think we have a prominent use case for this type of functionality, and perhaps they'd even be willing to give feedback on some kind of initial implementation.

jvendetti commented 9 months ago

As an add-on to my previous comment, the HRAVS ontology is a good example of points I expressed earlier in this exchange about notifying people of new submissions before the submission is fully processed. I'm subscribed to notes for HRAVS because I was interested in monitoring how well this functionality is working. I received an email today at 1:47PM, indicating that a new release (2.3.14) is now available. However, if I navigate to BioPortal (40 minutes later), the latest submissions is simply displayed as Uploaded, with no possibility to access:

Screenshot 2024-02-07 at 2 28 26 PM
syphax-bouazzouni commented 9 months ago

As an add-on to my previous comment, the HRAVS ontology is a good example of points I expressed earlier in this exchange about notifying people of new submissions before the submission is fully processed. I'm subscribed to notes for HRAVS because I was interested in monitoring how well this functionality is working. I received an email today at 1:47PM, indicating that a new release (2.3.14) is now available. However, if I navigate to BioPortal (40 minutes later), the latest submissions is simply displayed as Uploaded, with no possibility to access:

Screenshot 2024-02-07 at 2 28 26 PM

Hello, I think this is due to the cache not getting updated even if you have received an email indicating that it was parsed. The original issue was described here https://github.com/ncbo/bioportal-project/issues/193, and we did a (temporary) fix here https://github.com/ontoportal-lirmm/bioportal_web_ui/pull/416, in summary, when a submission is processed in the background it refreshes the backend cache, but not rails one, as the ncbo_cron has no way to access and refresh the rais cache.

jvendetti commented 9 months ago

Hi - yes, it occurred to me that implementing this type of functionality would shine more of a spotlight on caching issues in BioPortal, but I chose not to get into it here. I'm not convinced that the Rails cache is always the issue. I've encountered scenarios in BioPortal where flushing the Rails cache was insufficient to show a recently processed submission, and I had to go on to flush the goo cache as well.