Skip to content

ARR: Migrate Registration Forms to Root Domain#2785

Open
haroldrubio wants to merge 24 commits intomasterfrom
feature/arr-top-level
Open

ARR: Migrate Registration Forms to Root Domain#2785
haroldrubio wants to merge 24 commits intomasterfrom
feature/arr-top-level

Conversation

@haroldrubio
Copy link
Copy Markdown
Member

@haroldrubio haroldrubio commented Dec 4, 2025

This PR changes the super invitation of the registration invitations for ARR to a new root at aclweb.org/ACL/ARR in order to (1) prevent automatic posting of data with a tilde ID signatures and (2) prevent duplication of note content (copying between cycle, copying between roles)

  1. Copies members from the root to the current cycle on venue setup
  2. Modify setup scripts to read data from the root domain

I need to decide on how to handle some forms that should be bound to the cycle (requests for letters of recognition) - initially I was planning pointing all registration forms from the openreview-web end to point to a new domain but some should still point to the current cycle

TODOs:

  • Complete integration with openreview-web
  • Remove un-needed code (max load process and preprocess functions, etc.)
  • Running a date process from the current cycle's Custom_Max_Papers invitation to synchronize data from root registration forms

@haroldrubio haroldrubio self-assigned this Dec 4, 2025
Comment thread openreview/arr/arr.py Outdated
Comment thread openreview/arr/helpers.py Outdated
Comment thread openreview/arr/management/setup_ae_matching.py Outdated
# Create Reviewing_Resubmissions edges from root domain load notes
for role_id in [area_chairs_id]:
resubmissions_to_post = []
role_resubmissions_inv = f"{role_id}/-/Reviewing_Resubmissions"
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 is this invitation for?

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.

This is because there is a field in the maximum load note that allows them to indicate if they're willing to review a submission they previously reviewed - reviewers who select 0 load can select 'Yes' so they only get assigned resubmissions. The SACs/ACs don't have access to the maximum load note so that information is shared in the edges. Also, they can opt out of resubmissions so the SACs/ACs need to know this information

Comment thread openreview/arr/management/setup_reviewer_matching.py Outdated
# Create Reviewing_Resubmissions edges from root domain load notes
for role_id in [reviewers_id]:
resubmissions_to_post = []
role_resubmissions_inv = f"{role_id}/-/Reviewing_Resubmissions"
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.

I thought we were going to store the registration notes in the root group, not edges, why do you need this?

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.

The refactor removes the nesting inside the for loop - hopefully it's more clear that these are edges to the cycle and not the root group

Comment thread openreview/arr/management/setup_sae_matching.py Outdated

return invitation

def set_registration_invitation(self, registration_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.

the registration invitations should be the same for a regular venues or root venue, I would like to try reusing the code for both cases.

It seems that function needs: venue_id, registration_stage. Can we support this and call the same function from both?

Another option is to add a new state to the Venue class that says (support_root_venue), if this is true the regisration notes are created on the root venue instead the current venue.

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.

I was looking into changes for the Venue class and I'm running into a few issues:

The root venue doesn't have a venue request form (as I have implemented it right now) and doesn't get deployed, so there isn't a Venue object for the root venue. If there's a line that calls to the Venue object, I'd need to replace it.

Maybe it's worth it to deploy a full root venue instead of manually creating the meta invitation and only populating what we need, so I can better re-use code?

@haroldrubio haroldrubio marked this pull request as ready for review December 17, 2025 22:19
recruitmentInvitationId: domain.content.reviewers_recruitment_id?.value,
reviewLoad: '',
hasPaperRanking: false,
registrationFormDomainMap: {
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.

I'm not sure about this change, can we pass the list of registration invitations to the consoles as a parameter?

@melisabok melisabok added the arr Issues related to the ARR workflow label Apr 8, 2026
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.

2 participants