Reading: More handling of nil or uninterpretable values for F&P ordering and percentiles #2792
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Who is this PR for?
K5 folks looking at reading profiles
What problem does this PR fix?
In manual review, it came up that for some students the cohort percentiles for F&P would raise. This happened on the server from trying to sort values that were nil, which could happen when unable to interpret the F&P level.
What does this PR do?
This improves nil handling in a few places, and pushing that down all the way into
FAndPInterpret
.ComparableDataPoint
still implements a default ordering for null data points, since it has to tolerate underlying data points that may be nullable. Separately, the real fix here is to filter all those uninterpretable data points out in the higher levels of the reader profile computation (if not, they'd be included in percentile computations). Tests all around.Checklists
Which features or pages does this PR touch?
Does this PR use tests to help verify we can deploy these changes quickly and confidently?