Our Master's enrollment offering includes the ability to map to course runs & programs from external keys set by Master's partners. Course run-level external keys are meant to be set from within Publisher, within the same forms used to add/edit a course run. In testing this functionality via integration environment sandboxes with partners, we've found that some program courses we expected to have access to this field did not, and that there may be some assumptions of what will be true of Master's programs which need to be reviewed.
Motivating situation: https://discovery.edx.org/publisher/course_runs/9542/edit/ didn't have the `INSTITUTION COURSE ID` field available even though the course was in a Master's program, which on inspection of the code was because the course did not have any associated "Master's seats". Master's seats, as checked by old publisher, are a boolean flag `masters_track` on the publisher Seats model (e.g. https://discovery.edx.org/admin/publisher/seat/15313/change), whereas they're a proper type of Seat for the model in course_metadata. The publisher Seat models' `masters_track` field is meant to be visible as part of a form visible on creating a new course run, but in testing this form doesn't appear on e.g. https://discovery.edx.org/publisher/courses/3767/course_runs/new/.
Questions to Resolve
Why is the seats form not visible in https://discovery.edx.org/publisher/courses/3767/course_runs/new/
Is there something we can add to PC's checklist for setting up Master's courses/programs that would allow them to get past this?
How would/should seats be identified as "Master's" in Publisher v2?
Can we do away with this condition on the seats altogether without exposing the course-level external key field in places it shouldn't be visible?
How sensitive is this field, anyway? Is there an opportunity to make it more widely visible now, so it's not purely a Master's squad responsibility to maintain?