Skip to content

ARR: Merge Post-Submission and Preprint Release#2908

Open
haroldrubio wants to merge 35 commits intomasterfrom
fix/arr-preprint-in-post
Open

ARR: Merge Post-Submission and Preprint Release#2908
haroldrubio wants to merge 35 commits intomasterfrom
fix/arr-preprint-in-post

Conversation

@haroldrubio
Copy link
Copy Markdown
Member

@haroldrubio haroldrubio commented Mar 3, 2026

@haroldrubio haroldrubio self-assigned this Mar 3, 2026
Comment thread openreview/arr/arr.py Outdated

def create_post_submission_stage(self):
return self.venue.create_post_submission_stage()
self.venue.create_post_submission_stage()
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what if you create the Post_Submission invitation here? or pass the process function path as a param?

note=updated_note
)

openreview.tools.concurrent_requests(
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems to be two different types of post_submission invitations so I would try doing that:

  1. Post_Submission: post edits for all the submissions where preprint == No. This can be specified as a source parameter in the same invitation.
  2. Preprint_Post_Submission: post edits for all the submissions where preprint == Yes. This can be specified as the source parameter in the same invitation

@celestemartinez this is something that we discussed yesterday and this is a good case to support it.

  1. specify the source in the invitation.content
  2. process function get the submissions from the source
    3 apply the edits

@melisabok
Copy link
Copy Markdown
Member

@haroldrubio with this PR merged: #2934

Can you try creating two different Post_Submission invitations with different sources?

Copilot AI review requested due to automatic review settings March 27, 2026 16:04
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR resolves #2809 by removing the standalone ARR “Preprint Release” step and incorporating preprint handling into an ARR-specific post-submission date process, reducing the chance of race conditions between multiple processes updating submissions.

Changes:

  • Introduces an ARR-specific post_submission_process.py that handles both preprint and non-preprint post-submission behavior based on invitation content.source filters.
  • Creates a new Preprint_Post_Submission invitation alongside the existing Post_Submission invitation, each targeting a disjoint submission set (preprint: yes vs preprint: no).
  • Removes the legacy preprint release workflow stage/configuration and updates ARR venue tests accordingly.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
tests/test_arr_venue_v2.py Updates tests to assert creation/execution of Preprint_Post_Submission and validates updated reader behavior for released preprints.
openreview/venue/invitation.py Generalizes set_post_submission_invitation to accept custom invitation id, source filters, and process script path.
openreview/arr/process/preprint_release_submission_process.py Removes the legacy dedicated preprint release process script.
openreview/arr/process/post_submission_process.py Adds ARR-specific post-submission processing, including releasing preprints by updating note readers/field-level readers.
openreview/arr/invitation.py Adds ARR wrapper support for post-submission invitation customization (but currently contains duplicate method definitions).
openreview/arr/helpers.py Removes the configuration field and workflow stage for preprint_release_submission_date.
openreview/arr/arr.py Updates stage creation to create two post-submission invitations (preprint + non-preprint) using the ARR-specific process.
Comments suppressed due to low confidence (1)

openreview/arr/invitation.py:258

  • InvitationBuilder defines set_submission_message_invitation twice; the later definition overwrites the earlier one. Please keep only one definition to prevent shadowing bugs and make the public API of the class clearer.
    def set_submission_message_invitation(self):
        return self.venue_invitation_builder.set_submission_message_invitation()

    def set_iThenticate_plagiarism_check_invitation(self):
        return self.venue_invitation_builder.set_iThenticate_plagiarism_check_invitation()

    def set_submission_deletion_invitation(self, submission_revision_stage):
        return self.venue_invitation_builder.set_submission_deletion_invitation(submission_revision_stage)

    def set_review_invitation(self):
        return self.venue_invitation_builder.set_review_invitation()

    def update_review_invitations(self):
        return self.venue_invitation_builder.update_review_invitations()

    def set_review_rebuttal_invitation(self):
        return self.venue_invitation_builder.set_review_rebuttal_invitation()

    def set_meta_review_invitation(self):
        return self.venue_invitation_builder.set_meta_review_invitation()

    def set_recruitment_invitation(self, committee_name, options):
        return self.venue_invitation_builder.set_recruitment_invitation(committee_name,  options)

    def set_bid_invitations(self):
        return self.venue_invitation_builder.set_bid_invitations()

    def set_official_comment_invitation(self):
        return self.venue_invitation_builder.set_official_comment_invitation()

    def set_submission_message_invitation(self):
        return self.venue_invitation_builder.set_submission_message_invitation()

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +233 to +235
def set_submission_deletion_invitation(self, submission_revision_stage):
return self.venue_invitation_builder.set_submission_deletion_invitation(submission_revision_stage)

Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

InvitationBuilder defines set_submission_deletion_invitation twice (the second definition overwrites the first). Please remove the duplicate method to avoid confusion and accidental divergence if one copy is changed later.

Suggested change
def set_submission_deletion_invitation(self, submission_revision_stage):
return self.venue_invitation_builder.set_submission_deletion_invitation(submission_revision_stage)

Copilot uses AI. Check for mistakes.
Comment thread openreview/arr/invitation.py Outdated
Comment thread openreview/arr/process/post_submission_process.py Outdated
@melisabok melisabok added arr Issues related to the ARR workflow labels Apr 6, 2026
Comment thread openreview/arr/invitation.py
Comment thread tests/test_arr_venue_v2.py
Comment thread tests/test_arr_venue_v2.py
Comment thread openreview/venue/invitation.py Outdated
return invitation

def set_post_submission_invitation(self):
def set_post_submission_invitation(self, invitation_id=None, source=None, process_path='process/post_submission_process.py'):
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do you need to make these changes to the venue invitation? ARR is not using this set_post_submission_invitation anymore, right?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Something I still need is the ability to change the source, so only the non-preprints go through the usual post submission invitation - but I removed the rest

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

Labels

arr Issues related to the ARR workflow

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ARR: Merge Preprint Release into Post Submission

4 participants