Skip to content

[Feature:InstructorUI] TA Beta Testing Date Constraints#12417

Merged
bmcutler merged 29 commits into
mainfrom
ta-beta-testing-date-contraints
Mar 24, 2026
Merged

[Feature:InstructorUI] TA Beta Testing Date Constraints#12417
bmcutler merged 29 commits into
mainfrom
ta-beta-testing-date-contraints

Conversation

@Christian2147

@Christian2147 Christian2147 commented Feb 8, 2026

Copy link
Copy Markdown
Contributor

CAUTION: Since this PR removes a date constraint, if it is installed on a production system and then needs to be reverted after a moderate period of time where gradeables might have been created/edited and taking advantage of the more flexible date settings, rolling back / reverting the change might fail.

Why is this Change Important & Necessary?

Partially addresses #12349
This PR specifically removes all constraints for the TA beta testing date for gradeables. This is important and necessary because instructors felt that the current UI for setting dates on gradeables was confusing, and they want to have more freedom over what dates they set for gradeables, even if they are invalid, since a lot of those dates may not matter for the specific class or assignment.

What is the New Behavior?

Now, the TA beta testing date has no constraints, it can be set to whatever date regardless of other dates. When one of the lower dates is set to before the present day and the TA beta testing date is set to the future, the lower date wins when assigning a gradeable status on the gradeables page.

A date with actual constraints:
Constraint visible
Previously, the TA beta testing date also had a constraint (where its box would turn red and changes would fail to save) if it was after any of the dates below it (For example: open submission date).

Now, when the TA beta testing date is ahead of one of the dates below it, such as the open submission date (Only one that really matters now since all the other dates have constraints), it will display a message like the one shown here:
image

Additionally, when the TA beta testing date is in the future, and the open submission date is in the past, the open submission date wins and the assignment shows as open. This is also true for all dates below the TA viewing date.

What steps should a reviewer take to reproduce or test the bug or new feature?

Log in as instructor. Go to the sample course, try editing all gradeables and try changing their TA viewing date in all different combinations. Make sure that not only can the date be changed to any valid date, but also that the listing of the gradeable on the gradeables page is valid. For example, if open submission date is in the past, and TA viewing date in the future, then the assignment should show under OPEN, not under FUTURE, and not under BETA.

Secondly, On the gradeable page, make sure all the buttons are visible and function properly. For example, if the assignment shows as OPEN, all appropriate buttons should be visible and should function like normal.

Finally, go to a gradeable labeled FUTURE and a gradeable labeled BETA and try to copy the link. Then log out and log in as a student and try to paste the link. You should NOT be able to access the gradeable. If you can, please report it immediately.

Note: While testing, the only dates that should have full free access to be changed without causing any constraint issues currently are the grade inquiry dates and the ta view date. The rest of the dates still have constraints on them.

Automated Testing & Documentation

This feature is sufficiently tested by unit tests and cypress tests. Cypress tests have been added to ensure that the gradables are visible to the proper users when the TA beta testing date is changed along with the other dates, especially in ways that would previously violate a constraint. I have also added additional cypress tests for lab and other gradeables to ensure that the TA view date along with the other dates are working properly without the constraint. These tests also mainly consist of moving the dates around and checking to ensure the gradeable is viewed by the proper access levels.

Other information

This is not a breakage change. However, this PR DID add a create a new migration for the course database. It removed any DB constraints from the gradeable table relating to g_ta_view_start_date.
Link hijacking might be a security concern with this PR and should be tested. Ensure that ONLY instructors have access to FUTURE gradeables and instructors and TAs/Mentors have access to BETA gradeables.

Added a warning description for when the ta beta testing date is after the submission open date for students.
Spent about 2 hours trying to learn how migrations work on Submitty and ended up removing what appears to be the TA view (beta testing) constraint from the Gradeable table. This should hopefully prevent constraint issue when choosing dates.
Removed these PHP constraints for all gradeable types.
Fixed an issue where the ta view date could not be after the team lock date.
Fixed ordering for both:

Warning messages when setting gradeable dates.
Gradeable categorization when ta view date was after the present and open submission date was before the present.
@codecov

codecov Bot commented Feb 8, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 8 lines in your changes missing coverage. Please review.
✅ Project coverage is 21.65%. Comparing base (64774d8) to head (3f80125).
⚠️ Report is 16 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff              @@
##               main   #12417      +/-   ##
============================================
- Coverage     21.66%   21.65%   -0.01%     
- Complexity     9638     9649      +11     
============================================
  Files           268      268              
  Lines         36223    36228       +5     
  Branches        486      486              
============================================
- Hits           7847     7846       -1     
- Misses        27894    27900       +6     
  Partials        482      482              
Flag Coverage Δ
autograder 21.32% <ø> (ø)
js 2.04% <ø> (ø)
migrator 100.00% <ø> (ø)
php 20.67% <0.00%> (-0.01%) ⬇️
python_submitty_utils 80.08% <ø> (ø)
submitty_daemon_jobs 91.13% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@Christian2147 Christian2147 changed the title Ta beta testing date contraints [Feature:InstructorUI] TA Beta Testing Date Constraints Feb 8, 2026

@williamschen23 williamschen23 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

DB Dump needs to be fixed

Image Missing edge case for simple gradeable, banner always displays. `submission_open_date` doesnt exist for simple gradeables.

@github-project-automation github-project-automation Bot moved this from Seeking Reviewer to Work in Progress in Submitty Development Feb 9, 2026
This reverts unnecessary DB Dump changes.
Fixed ta view date and submission open date warning popping up when submission open date is not visible.

@JManion32 JManion32 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I noticed when I set the TA Beta testing Date Constraint to the end of time on a gradeable in the "FUTURE" section and then click OPEN TO TAS NOW, the gradeable jumps to the bottom of the page in the "Grades Available" section. Is this intended functionality since it would compare all of the dates and land on "Grades Available" since it is supposed to be the last one in chronological order?

I'd also like to know more about automated testing. The gradeables page is critical to courses, and gradeable date constraints have been reported to cause crashes (see #12204 and #10874). Additionally, there is a lot of edge cases that would be hard to adequately test manually.

Have you checked to see what E2E tests we currently have for changing gradeable dates? There appears to already be some in edit_gradeable.spec.js. It is definitely worth expanding on whatever exists now so that you have a nice foundation for this PR and all follow-ups for other constraints.

@williamschen23

Copy link
Copy Markdown
Contributor

Ive added some specifically for grade inquries when I first made the first remove constraints PR. These definietely need more E2e tests, but I haven't been looking at this since CI is failing

@Christian2147

Copy link
Copy Markdown
Contributor Author

I noticed when I set the TA Beta testing Date Constraint to the end of time on a gradeable in the "FUTURE" section and then click OPEN TO TAS NOW, the gradeable jumps to the bottom of the page in the "Grades Available" section. Is this intended functionality since it would compare all of the dates and land on "Grades Available" since it is supposed to be the last one in chronological order?

I'd also like to know more about automated testing. The gradeables page is critical to courses, and gradeable date constraints have been reported to cause crashes (see #12204 and #10874). Additionally, there is a lot of edge cases that would be hard to adequately test manually.

Have you checked to see what E2E tests we currently have for changing gradeable dates? There appears to already be some in edit_gradeable.spec.js. It is definitely worth expanding on whatever exists now so that you have a nice foundation for this PR and all follow-ups for other constraints.

After some testing turns out this button just does this regardless of what you set the dates to. I will look into this today.

This button would previously set all dates to now. Made it so that it only changed the TA view date to now.
Fixed a test that should show all changes saved when TA view date is after submission open date. Also added an additional test that makes sure the gradable is visible to all when submission open date is in the past and ta view date is in the future.
Using testid instead of id for submission open date.
- removed this because it was already set to past date
- Need to log back in as instructor after testing gradeable visibility with students, graders, and Tas.
Fixed students not being able to view the gradeable if the ta view date was in the future and the submission open date in the past.
Fixed an issue where TAs could view FUTURE gradeables where the open submission date did not exist.
@automateprojectmangement automateprojectmangement Bot moved this from Work in Progress to In Review in Submitty Development Feb 23, 2026
@Christian2147

Copy link
Copy Markdown
Contributor Author

Ive added some specifically for grade inquries when I first made the first remove constraints PR. These definietely need more E2e tests, but I haven't been looking at this since CI is failing

All CIs should be fixed now.

When ta beta testing date is after the manual grading date, a warning will now pop up.
Removed redundant operation in cypress testing
Finished lab gradeables cypress tests
Added check to make sure date_ta_view is accessible.
I removed this update dates because on github, it is already set to future date. I will remove this comment once it appears to be working properly.
dates on github cypress != dates on local cypress
made 'All Changes Saved' acceptable and '' acceptable
Manual grading in the past and TA viewing in the future means it is visible for graders, tas, and instructors.
@automateprojectmangement automateprojectmangement Bot moved this from Work in Progress to In Review in Submitty Development Mar 10, 2026

@JManion32 JManion32 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

The code looks good to me.

I ran the Cypress test twice locally. It worked the first time (though an unrelated test failed). The second time, the first two passed, and the rest, including the new one, failed. Not sure if this is what the results have been for you. I am on a fresh VM snapshot.

We need more functionality reviews here, and it would be nice to have that Cypress test working reliably locally, but that may not be feasible if other tests aren't being atomic.

@Christian2147

Copy link
Copy Markdown
Contributor Author

The code looks good to me.

I ran the Cypress test twice locally. It worked the first time (though an unrelated test failed). The second time, the first two passed, and the rest, including the new one, failed. Not sure if this is what the results have been for you. I am on a fresh VM snapshot.

We need more functionality reviews here, and it would be nice to have that Cypress test working reliably locally, but that may not be feasible if other tests aren't being atomic.

I am honestly having trouble getting any of the cypress tests anywhere to pass consistently locally. But I know that on github, the edit-gradeable.spec tests are consistently passing, and I have ran them at least twice I believe.

@QuackHonk QuackHonk assigned QuackHonk and unassigned QuackHonk Mar 17, 2026

@JManion32 JManion32 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

The code and functionality look great. Please make sure to update the Automated Testing and Documentation portion of the description to talk about the Cypress test you added.

The only thing that is holding me back from approving is the unreliability of edit_gradeable.spec.js locally. As we verified in class on a fresh vagrant destroy vagrant up on main, nothing appears to be caused by your changes, since it even fails then. We just can't rule it out 100% since we can't test it consistently.

I think @williamjallen will be at the developer meeting today, and we should discuss this with him. Great work with this PR. Working with dates is complex, and there were a lot of weird cases to consider here.

@aconfo aconfo left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I performed a functionality review. Testing if a TA open date in the future, with submission open date in the past performed as intended and was still under the "OPEN" section.

Image

With this assignment I tried reviewing it, adding submissions, closing submissions, without encountering any obvious errors with the functionality. I also tried to access a future gradeable as a student which it prevented, as well as a beta gradeable, which is also prevented me from editing. When changing the dates of a future assignment such that the TA date was still in the future, but the open submission date the past, It would be open, in the open section, and visible to both students and TA's. Ta's would be able to preview grading when it was open as well, and I couldnt notice any immediate errors again. Overall It looks pretty good, and I didn't find any immediate errors in my testing, there may of course be some errors that I missed or didn't test.

@aconfo aconfo left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

See earlier comment

@John-Roy123 John-Roy123 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I did a functionality test and all of the intended changes work with this PR, and I did not come across any bugs while testing.

@JManion32 JManion32 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Great work with this. Though the edit_gradeable Cypress tests are inconsistent locally, we have verified that they pass CI consistently. This PR is a great template for eliminating the rest of the constraints in the future.

@williamjallen williamjallen left a comment

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.

Code looks good to me. As noted previously, the down migration is potentially risky. I'll leave the decision about whether that risk is acceptable to Barb.

@bmcutler
bmcutler merged commit 474d3ec into main Mar 24, 2026
118 of 119 checks passed
@bmcutler
bmcutler deleted the ta-beta-testing-date-contraints branch March 24, 2026 16:47
@github-project-automation github-project-automation Bot moved this from In Review to Done in Submitty Development Mar 24, 2026
GarvitKhandelwal31 pushed a commit to GarvitKhandelwal31/Submitty that referenced this pull request Mar 25, 2026
### CAUTION: Since this PR removes a date constraint, if it is installed
on a production system and then needs to be reverted after a moderate
period of time where gradeables might have been created/edited and
taking advantage of the more flexible date settings, rolling back /
reverting the change might fail.

### Why is this Change Important & Necessary?
Partially addresses Submitty#12349
This PR specifically removes all constraints for the TA beta testing
date for gradeables. This is important and necessary because instructors
felt that the current UI for setting dates on gradeables was confusing,
and they want to have more freedom over what dates they set for
gradeables, even if they are invalid, since a lot of those dates may not
matter for the specific class or assignment.

### What is the New Behavior?
Now, the TA beta testing date has no constraints, it can be set to
whatever date regardless of other dates. When one of the lower dates is
set to before the present day and the TA beta testing date is set to the
future, the lower date wins when assigning a gradeable status on the
gradeables page.

A date with actual constraints:
<img width="2960" height="1755" alt="Constraint visible"
src="https://github.com/user-attachments/assets/17cf85c4-cc63-4171-bee1-b1f7b37a0875"
/>
Previously, the TA beta testing date also had a constraint (where its
box would turn red and changes would fail to save) if it was after any
of the dates below it (For example: open submission date).

Now, when the TA beta testing date is ahead of one of the dates below
it, such as the open submission date (Only one that really matters now
since all the other dates have constraints), it will display a message
like the one shown here:
<img width="3000" height="1891" alt="image"
src="https://github.com/user-attachments/assets/b1c80060-bdc1-4e82-81a9-ce954a8aadfd"
/>

Additionally, when the TA beta testing date is in the future, and the
open submission date is in the past, the open submission date wins and
the assignment shows as open. This is also true for all dates below the
TA viewing date.

### What steps should a reviewer take to reproduce or test the bug or
new feature?

Log in as instructor. Go to the sample course, try editing all
gradeables and try changing their TA viewing date in all different
combinations. Make sure that not only can the date be changed to any
valid date, but also that the listing of the gradeable on the gradeables
page is valid. For example, if open submission date is in the past, and
TA viewing date in the future, then the assignment should show under
OPEN, not under FUTURE, and not under BETA.

Secondly, On the gradeable page, make sure all the buttons are visible
and function properly. For example, if the assignment shows as OPEN, all
appropriate buttons should be visible and should function like normal.

Finally, go to a gradeable labeled FUTURE and a gradeable labeled BETA
and try to copy the link. Then log out and log in as a student and try
to paste the link. You should NOT be able to access the gradeable. If
you can, please report it immediately.

Note: While testing, the only dates that should have full free access to
be changed without causing any constraint issues currently are the grade
inquiry dates and the ta view date. The rest of the dates still have
constraints on them.

### Automated Testing & Documentation
<!-- Is this feature sufficiently tested by unit tests and end-to-end
tests?
If this PR does not add/update the necessary automated tests, write a
new GitHub issue and link it below.
Is this feature sufficiently documented on submitty.org?
Link related PRs or new GitHub issue to update documentation. -->
This feature is sufficiently tested by unit tests and cypress tests.
Cypress tests have been added to ensure that the gradables are visible
to the proper users when the TA beta testing date is changed along with
the other dates, especially in ways that would previously violate a
constraint. I have also added additional cypress tests for lab and other
gradeables to ensure that the TA view date along with the other dates
are working properly without the constraint. These tests also mainly
consist of moving the dates around and checking to ensure the gradeable
is viewed by the proper access levels.

### Other information
<!-- Is this a breaking change?  
Does this PR include migrations to update existing installations?  
Are there security concerns with this PR? -->
This is not a breakage change. However, this PR DID add a create a new
migration for the course database. It removed any DB constraints from
the gradeable table relating to g_ta_view_start_date.
Link hijacking might be a security concern with this PR and should be
tested. Ensure that ONLY instructors have access to FUTURE gradeables
and instructors and TAs/Mentors have access to BETA gradeables.
GarvitKhandelwal31 pushed a commit to GarvitKhandelwal31/Submitty that referenced this pull request Mar 29, 2026
### CAUTION: Since this PR removes a date constraint, if it is installed
on a production system and then needs to be reverted after a moderate
period of time where gradeables might have been created/edited and
taking advantage of the more flexible date settings, rolling back /
reverting the change might fail.

### Why is this Change Important & Necessary?
Partially addresses Submitty#12349
This PR specifically removes all constraints for the TA beta testing
date for gradeables. This is important and necessary because instructors
felt that the current UI for setting dates on gradeables was confusing,
and they want to have more freedom over what dates they set for
gradeables, even if they are invalid, since a lot of those dates may not
matter for the specific class or assignment.

### What is the New Behavior?
Now, the TA beta testing date has no constraints, it can be set to
whatever date regardless of other dates. When one of the lower dates is
set to before the present day and the TA beta testing date is set to the
future, the lower date wins when assigning a gradeable status on the
gradeables page.

A date with actual constraints:
<img width="2960" height="1755" alt="Constraint visible"
src="https://github.com/user-attachments/assets/17cf85c4-cc63-4171-bee1-b1f7b37a0875"
/>
Previously, the TA beta testing date also had a constraint (where its
box would turn red and changes would fail to save) if it was after any
of the dates below it (For example: open submission date).

Now, when the TA beta testing date is ahead of one of the dates below
it, such as the open submission date (Only one that really matters now
since all the other dates have constraints), it will display a message
like the one shown here:
<img width="3000" height="1891" alt="image"
src="https://github.com/user-attachments/assets/b1c80060-bdc1-4e82-81a9-ce954a8aadfd"
/>

Additionally, when the TA beta testing date is in the future, and the
open submission date is in the past, the open submission date wins and
the assignment shows as open. This is also true for all dates below the
TA viewing date.

### What steps should a reviewer take to reproduce or test the bug or
new feature?

Log in as instructor. Go to the sample course, try editing all
gradeables and try changing their TA viewing date in all different
combinations. Make sure that not only can the date be changed to any
valid date, but also that the listing of the gradeable on the gradeables
page is valid. For example, if open submission date is in the past, and
TA viewing date in the future, then the assignment should show under
OPEN, not under FUTURE, and not under BETA.

Secondly, On the gradeable page, make sure all the buttons are visible
and function properly. For example, if the assignment shows as OPEN, all
appropriate buttons should be visible and should function like normal.

Finally, go to a gradeable labeled FUTURE and a gradeable labeled BETA
and try to copy the link. Then log out and log in as a student and try
to paste the link. You should NOT be able to access the gradeable. If
you can, please report it immediately.

Note: While testing, the only dates that should have full free access to
be changed without causing any constraint issues currently are the grade
inquiry dates and the ta view date. The rest of the dates still have
constraints on them.

### Automated Testing & Documentation
<!-- Is this feature sufficiently tested by unit tests and end-to-end
tests?
If this PR does not add/update the necessary automated tests, write a
new GitHub issue and link it below.
Is this feature sufficiently documented on submitty.org?
Link related PRs or new GitHub issue to update documentation. -->
This feature is sufficiently tested by unit tests and cypress tests.
Cypress tests have been added to ensure that the gradables are visible
to the proper users when the TA beta testing date is changed along with
the other dates, especially in ways that would previously violate a
constraint. I have also added additional cypress tests for lab and other
gradeables to ensure that the TA view date along with the other dates
are working properly without the constraint. These tests also mainly
consist of moving the dates around and checking to ensure the gradeable
is viewed by the proper access levels.

### Other information
<!-- Is this a breaking change?  
Does this PR include migrations to update existing installations?  
Are there security concerns with this PR? -->
This is not a breakage change. However, this PR DID add a create a new
migration for the course database. It removed any DB constraints from
the gradeable table relating to g_ta_view_start_date.
Link hijacking might be a security concern with this PR and should be
tested. Ensure that ONLY instructors have access to FUTURE gradeables
and instructors and TAs/Mentors have access to BETA gradeables.
GarvitKhandelwal31 pushed a commit to GarvitKhandelwal31/Submitty that referenced this pull request Apr 14, 2026
### CAUTION: Since this PR removes a date constraint, if it is installed
on a production system and then needs to be reverted after a moderate
period of time where gradeables might have been created/edited and
taking advantage of the more flexible date settings, rolling back /
reverting the change might fail.

### Why is this Change Important & Necessary?
Partially addresses Submitty#12349
This PR specifically removes all constraints for the TA beta testing
date for gradeables. This is important and necessary because instructors
felt that the current UI for setting dates on gradeables was confusing,
and they want to have more freedom over what dates they set for
gradeables, even if they are invalid, since a lot of those dates may not
matter for the specific class or assignment.

### What is the New Behavior?
Now, the TA beta testing date has no constraints, it can be set to
whatever date regardless of other dates. When one of the lower dates is
set to before the present day and the TA beta testing date is set to the
future, the lower date wins when assigning a gradeable status on the
gradeables page.

A date with actual constraints:
<img width="2960" height="1755" alt="Constraint visible"
src="https://github.com/user-attachments/assets/17cf85c4-cc63-4171-bee1-b1f7b37a0875"
/>
Previously, the TA beta testing date also had a constraint (where its
box would turn red and changes would fail to save) if it was after any
of the dates below it (For example: open submission date).

Now, when the TA beta testing date is ahead of one of the dates below
it, such as the open submission date (Only one that really matters now
since all the other dates have constraints), it will display a message
like the one shown here:
<img width="3000" height="1891" alt="image"
src="https://github.com/user-attachments/assets/b1c80060-bdc1-4e82-81a9-ce954a8aadfd"
/>

Additionally, when the TA beta testing date is in the future, and the
open submission date is in the past, the open submission date wins and
the assignment shows as open. This is also true for all dates below the
TA viewing date.

### What steps should a reviewer take to reproduce or test the bug or
new feature?

Log in as instructor. Go to the sample course, try editing all
gradeables and try changing their TA viewing date in all different
combinations. Make sure that not only can the date be changed to any
valid date, but also that the listing of the gradeable on the gradeables
page is valid. For example, if open submission date is in the past, and
TA viewing date in the future, then the assignment should show under
OPEN, not under FUTURE, and not under BETA.

Secondly, On the gradeable page, make sure all the buttons are visible
and function properly. For example, if the assignment shows as OPEN, all
appropriate buttons should be visible and should function like normal.

Finally, go to a gradeable labeled FUTURE and a gradeable labeled BETA
and try to copy the link. Then log out and log in as a student and try
to paste the link. You should NOT be able to access the gradeable. If
you can, please report it immediately.

Note: While testing, the only dates that should have full free access to
be changed without causing any constraint issues currently are the grade
inquiry dates and the ta view date. The rest of the dates still have
constraints on them.

### Automated Testing & Documentation
<!-- Is this feature sufficiently tested by unit tests and end-to-end
tests?
If this PR does not add/update the necessary automated tests, write a
new GitHub issue and link it below.
Is this feature sufficiently documented on submitty.org?
Link related PRs or new GitHub issue to update documentation. -->
This feature is sufficiently tested by unit tests and cypress tests.
Cypress tests have been added to ensure that the gradables are visible
to the proper users when the TA beta testing date is changed along with
the other dates, especially in ways that would previously violate a
constraint. I have also added additional cypress tests for lab and other
gradeables to ensure that the TA view date along with the other dates
are working properly without the constraint. These tests also mainly
consist of moving the dates around and checking to ensure the gradeable
is viewed by the proper access levels.

### Other information
<!-- Is this a breaking change?  
Does this PR include migrations to update existing installations?  
Are there security concerns with this PR? -->
This is not a breakage change. However, this PR DID add a create a new
migration for the course database. It removed any DB constraints from
the gradeable table relating to g_ta_view_start_date.
Link hijacking might be a security concern with this PR and should be
tested. Ensure that ONLY instructors have access to FUTURE gradeables
and instructors and TAs/Mentors have access to BETA gradeables.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

9 participants