Currently, you can create sections in Canvas in a course and tie your catalog tile to match with the "Section for Enrollment" component on a catalog listing. For example, if Joe enrolls in section A through the catalog, then he stays in section A. An admin can go in later and change the enrollment section in the catalog to section B and new people can enroll while Joe's enrollment stays with section A.
This logic does not apply to Programs in the Catalog. This idea would allow a user to enroll in a Program through the catalog (2 or more courses) and the section they enroll in would apply to all the courses in the bundle, not just the first course. For example, Joe would enroll in Bundle A which includes 4 courses, and his section enrollment would follow him through all 4 courses. An admin could then switch the program tile to section B and whoever enrolls in section B would be in the same courses Joe is in, but in a different section for all 4 courses.
Currently, you have to manage this on a course by course basis inside the Program bundle and it is very time consuming and not a great user experience. Additionally, if you change the section for enrollment before someone who enrolled in a prior section selects "begin course" then their section changes in the catalog and they do not have access to the course with the original dates they enrolled with.
In this guide: https://community.canvaslms.com/docs/DOC-9611-26051255132 it explains "Note: If you enroll in a Catalog program, you must begin each course in Catalog. Canvas does not enroll you in a course or display the course in Canvas until you click the Begin Course button for each course requirement in the program." meaning that they will not enroll in that section of the course until they press the "Begin Course" button.
For example, if Student "A" signs up for section 1 in the course "A", once they are done with Course "A" they will then have the option to sign up for course "B", but it depends on what "Section for New Enrollments" is currently selected for course "B". It will be set to section 1 originally so there shouldn't be any issues with these users.
Although if student "B" signed up for Course "A", while in section 2 and finished the class before section 2 completed, then they would actually have the option to sign up for Course "B", but if the "Section for New Enrollments" option is still showing section 1 in Course "B", student "B" will sign up for the "incorrect" section, section 1. The only way to prevent this from happening would be to tell the students not to press "Begin Course" until the start date corresponding with their section they signed up for in the original course.
My point for this enhancement is that the section a student enrolls in through a catalog program should follow them throughout their course bundle.
8-1-19 Update: Adding that students should be enrolled in all courses in a program without having to click "begin course" to trigger enrollment regardless of section dates mentioned above.