The default setting for programs allows registrations with an age/grade mismatch, although the parent gets a warning message when adding the session to their cart.
The parent could have saved the session to their schedule before setting the grade of the child, and then set the grade of the child during checkout, in which case the final step (step 3) of checkout would have shown this message, for example:
>There are some warnings for this session. Please make sure you are aware of the issues listed below and that you want to register for this session despite the issues.
>(!) Age or grade of Child-0 (age 6, grade K) does not match the age range or grade range of this session.
Or the parent might have set the child's grade earlier and seen the program in the results because it matched a sibling or because basic filters were disabled, and opened the program details modal and used the Add to Cart button to add it to the child with the mismatching grade. In that case, the parent would have been warned about the grade mismatch and asked whether to proceed, and later in checkout would have been warned again in step 1 and again in step 3. The warning in step 1 is a little stronger:
> There are some warnings for this session. Please make sure you are aware of the issues listed below and that you want to register for this session despite the issues.
>(!) The age/grade of Child-0 (age 6, grade K) does not precisely match the age/grade range specified for this session. Please communicate with the provider (foo@bar) and check the cancellation policy for potential fees that may incur if the student is not allowed to attend and has to be un-enrolled.
In either case, we didn't stop parents from checking out if they chose to ignore the warning since sometimes the provider/instructor would agree to accept the kids not matching the age/grade range setting. The provider also gets an age/grade mismatch warning message and could unenroll the student if needed. To make the age/grade setting of the program binding, select “Students outside the age/grade ranges > Cannot be registered” for the program.
Note: For classes and camps starting after June 1, the system uses the grade in the Fall to determine the grade match. Consequently, session rosters of summer camps after June 1 show the student's grade in Fall of the upcoming school year. For classes and camps prior to June 1, for example spring camps, the grade match is based on the grade in Spring of the ongoing school year to assure the correct grade of the student.