Skip to content

Relax editing metadata on published/posted materials #10263

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

Open
asmecher opened this issue Jul 31, 2024 · 37 comments · May be fixed by #10335 or pkp/ui-library#398
Open

Relax editing metadata on published/posted materials #10263

asmecher opened this issue Jul 31, 2024 · 37 comments · May be fixed by #10335 or pkp/ui-library#398
Assignees
Milestone

Comments

@asmecher
Copy link
Member

Describe the bug
Currently, when content is published/posted in OJS/OMP/OPS, editors are restricted from making further changes:
image

In practice, however, editors want the ability to tweak/edit metadata in published content. This has led to anti-patterns like unpublish/edit/republish cycles.

In OMP, there is an additional problem, where certain data on Publication Formats can't be accessed/reviewed because the edit links disappear once the content is published.

Accepting that editors are going to want to tweak metadata after publication, we should keep the warning message present, but stop restricting edits. We should trust the editors to understand the implications of making edits, but not try to prevent it.

@asmecher asmecher added this to the 3.5.0 LTS milestone Jul 31, 2024
@Hafsa-Naeem Hafsa-Naeem self-assigned this Jul 31, 2024
@ewhanson
Copy link
Contributor

We had previously relied on the act of publishing (e.g. Repo::publication()->publish()) to indicate that metadata (new or changed) is available for downstream service to consume and used this as a jumping off point. By making it possible to edit this metadata post publication, I propose that we should treat each save event of the metadata as a MetadataChanged event and make use of the MetadataChanged and BatchMetadataChanged events.

I would propose a naive approach that simply always dispatches the MetadataChanged event when the form is saved/updated post publication, and let each individual implementation be in charge of deciding what metadata is important to process.

This approach has the advantage of using already existing events and jobs and allows any updates to happen asynchronously to the web request. It is also extensible for any future services or third-party plugins that need to know when metadata has been updated.

Examples of downstream services that would make use of this (either currently implemented or future implementations):

  • Mark DOIs for a submission as stale. The DOI logic already handles resubmitting stale DOIs. This should already implemented for major the registration agencies we support.
  • Update ORCID records for authenticated users in their ORCID profile. I don't think this has been implemented yet, but it could be added independently of this work.

@asmecher
Copy link
Member Author

Thanks, @Hafsa-Naeem! @Vitaliy-1, would you be able to review this one?

@jardakotesovec
Copy link
Contributor

@asmecher @Hafsa-Naeem On ui-library side of things this make sense to apply to the new side modal workflow page. Trying to get that side modal workflow page as default on main branch ASAP.. Its probably 2-4 weeks away.

@ajnyga
Copy link
Contributor

ajnyga commented Sep 18, 2024

This is a good change, because journals get stuck and create new versions easily without any good reason (correcting a typo etc.)

Just asking that when we now edit the metadata, is this visible in the editorial history? ie. do we stamp who did what? I think this is important especially after something has been published.

@asmecher
Copy link
Member Author

There would be an event in the event log, but if the editor chooses not to create a new version, the change will not be tracked.

Note that we'll be extending versioning further with #4860 -- description there.

@jardakotesovec
Copy link
Contributor

@Hafsa-Naeem Hi Hafsa,
I am still active on this codebase, but risk of code conflicts is lot lower as most things are getting settled.

Permission to edit publication is now calculated here - https://github.com/pkp/ui-library/blob/main/src/pages/workflow/composables/useWorkflowPermissions.js#L70 . So that might be only place you need to adjust on frontend.

Let me know if you have any difficulties.

@asmecher
Copy link
Member Author

asmecher commented Jan 7, 2025

@Hafsa-Naeem, just checking in on the status of this one -- is it ready to resume?

@Hafsa-Naeem
Copy link
Contributor

@asmecher it needs to be reviewed

@asmecher
Copy link
Member Author

Thanks, @Hafsa-Naeem! @defstat, can you review this one?

@defstat
Copy link
Contributor

defstat commented Jan 28, 2025

@Hafsa-Naeem thanks. I have added a comment here regarding that.

Hafsa-Naeem added a commit to Hafsa-Naeem/pkp-lib that referenced this issue Feb 27, 2025
Hafsa-Naeem added a commit to Hafsa-Naeem/ui-library that referenced this issue Feb 27, 2025
Hafsa-Naeem added a commit to Hafsa-Naeem/ui-library that referenced this issue Feb 28, 2025
Hafsa-Naeem added a commit to Hafsa-Naeem/ui-library that referenced this issue Feb 28, 2025
@Hafsa-Naeem
Copy link
Contributor

Hafsa-Naeem commented Apr 30, 2025

@asmecher yes, this conversation was resolved as after the meeting discussion we decided on that: if any publication of the submission is published, we don't allow authors to make any changes to any publication of that submission, even if there are other unpublished version publications here. That’s why the fix ended up taking a different approach.

Let me quickly apply your suggested change and rebase to fix all the recent conflicts.

Hafsa-Naeem added a commit to Hafsa-Naeem/ojs that referenced this issue Apr 30, 2025
Hafsa-Naeem added a commit to Hafsa-Naeem/pkp-lib that referenced this issue Apr 30, 2025
Hafsa-Naeem added a commit to Hafsa-Naeem/pkp-lib that referenced this issue Apr 30, 2025
Hafsa-Naeem added a commit to Hafsa-Naeem/pkp-lib that referenced this issue Apr 30, 2025
Hafsa-Naeem added a commit to Hafsa-Naeem/pkp-lib that referenced this issue Apr 30, 2025
Hafsa-Naeem added a commit to Hafsa-Naeem/pkp-lib that referenced this issue Apr 30, 2025
Hafsa-Naeem added a commit to Hafsa-Naeem/ui-library that referenced this issue Apr 30, 2025
Hafsa-Naeem added a commit to Hafsa-Naeem/ui-library that referenced this issue Apr 30, 2025
Hafsa-Naeem added a commit to Hafsa-Naeem/ui-library that referenced this issue Apr 30, 2025
Hafsa-Naeem added a commit to Hafsa-Naeem/ui-library that referenced this issue Apr 30, 2025
…ion has a published or scheduled publication
Hafsa-Naeem added a commit to Hafsa-Naeem/omp that referenced this issue Apr 30, 2025
Hafsa-Naeem added a commit to Hafsa-Naeem/ops that referenced this issue Apr 30, 2025
Hafsa-Naeem added a commit to Hafsa-Naeem/ops that referenced this issue Apr 30, 2025
Vitaliy-1 added a commit that referenced this issue May 1, 2025
#10263 Relax editing metadata on published/posted materials
Vitaliy-1 added a commit to pkp/ui-library that referenced this issue May 1, 2025
pkp/pkp-lib#10263 Relax editing metadata on published/posted materials
Vitaliy-1 added a commit to pkp/ojs that referenced this issue May 1, 2025
pkp/pkp-lib#10263 Relax editing metadata on published/posted materials
Vitaliy-1 added a commit to pkp/ops that referenced this issue May 1, 2025
pkp/pkp-lib#10263 Relax editing metadata on published/posted materials
Vitaliy-1 added a commit to pkp/omp that referenced this issue May 1, 2025
pkp/pkp-lib#10263 Relax editing metadata on published/posted materials
@Vitaliy-1
Copy link
Contributor

Thanks, @Hafsa-Naeem! All merged. Keeping this issue one as it also requires porting to the main

@jonasraoni
Copy link
Contributor

I've added extra comments to the PRs, but the only important thing is to avoid using ===/!== with non-string fields, due to a bug where the database values are retrieved as a string, until we come up with a generic fix.

Hafsa-Naeem added a commit to Hafsa-Naeem/pkp-lib that referenced this issue May 12, 2025
@Hafsa-Naeem
Copy link
Contributor

Hafsa-Naeem commented May 12, 2025

@jonasraoni Thanks for the clean-up suggestions. Since the original branch has already been merged, I’ve opened a small follow-up PR 11386 to address the feedback

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment