fix: incorrect-grade journey takes title, awarding organisation and grades from the 16-19 qualification reference (AB#301903) - #435
Open
ajs-uk-dev wants to merge 16 commits into
Conversation
… beside the result (AB#301903) Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DiEiJB99BoBmqmFZ5J8nX7
…the picked result, not the AODC grade file (AB#301903) Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DiEiJB99BoBmqmFZ5J8nX7
… awarding organisation from the 16-19 reference (AB#301903) Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DiEiJB99BoBmqmFZ5J8nX7
…anisation from the 16-19 reference (AB#301903) Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DiEiJB99BoBmqmFZ5J8nX7
…ence holds (AB#301903) Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DiEiJB99BoBmqmFZ5J8nX7
…the Task 3 create step clobbered (AB#301903) The plan's Task 3 step 1.2 said to 'Create' this file, but it already pinned the ResultDetails page and the _GradeSelect partial (15 facts). The earlier commit overwrote it with only the 2 new AB#301903 facts, silently deleting 13 tests. This restores the original content and folds the 2 new facts in as their own section. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DiEiJB99BoBmqmFZ5J8nX7
…d qualification rows (AB#301903) Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DiEiJB99BoBmqmFZ5J8nX7
…w the 16-19 reference is the only scale source (AB#301903) Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DiEiJB99BoBmqmFZ5J8nX7
… 16-19 qualification reference (AB#301903) Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DiEiJB99BoBmqmFZ5J8nX7
…he picked result (AB#301903 review) Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DiEiJB99BoBmqmFZ5J8nX7
…s none (AB#301903 review) Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DiEiJB99BoBmqmFZ5J8nX7
…ture honestly (AB#301903 review) Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DiEiJB99BoBmqmFZ5J8nX7
…ication (AB#301903 review) Second-pass review G1: deleting the PagePost heal call left every unit fact green. A user already on the grade page when the change deploys posts straight into validation, so the heal must run before ValidateGradeSelect or the post is refused against an empty scale. The new fact goes red without the call. The docs sentence now says any journey page or the summary re-resolves, which is what the code does (G3). Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DiEiJB99BoBmqmFZ5J8nX7
Deployments
|
paulc1983
previously approved these changes
Sep 11, 2026
…e and summary (AB#301903 review) The details pages said "Awarding Organisation name" while the summaries and the search page said "Awarding Organisation (AO) name", so a user saw two labels for one value three pages apart. Standardise on the majority spelling in both the incorrect-grade and missing-qualification journeys. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01NW7xKMaSZmVaYqBu6Km6Nr
…itle (AB#301903 review) The result-search POST resolves the qualification for every journey with a result-search page, so the "result does not belong" check-answers card gained the AO row and reference title along with incorrect grade. Intended — a stray result should be identified the same way on every card — but it was unpinned and undocumented. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01NW7xKMaSZmVaYqBu6Km6Nr
…AB#301903 review) The docs and the result-search comment read as if any later page re-resolved the qualification whenever the reference changed. Only a stored null is re-resolved; a resolved entry stays as picked until the result is re-picked. Say so where a future developer will look. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01NW7xKMaSZmVaYqBu6Km6Nr
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
The 16-19 "report an incorrect grade" journey took the qualification title, awarding organisation
and selectable grades from a hand-authored, six-QAN AODC/KS4 grade-reference file instead of the
service's own 16-19 qualification reference (974 QANs from the supplier QualList export) — so the
ticket's example QAN showed KS4 data it was never meant to.
it in session beside the result.
their title, awarding organisation and grade scale from that resolved entry — never from the
results file's abbreviated name or the old AODC grade list.
1…9, Q, R, U, Xfor a GCSE;*, A…E, N, Q, R, U, Xfor an A level;*, D, F, M, P, Q, R, U, Xfor a BTEC), not the old file's pass-then-failorder — intended, not a regression.
follow.
page (GET or POST) or the summary. Only a stored null is re-resolved; a resolved entry is a snapshot
until the result is re-picked.
shares the summary card and the result-search resolution. Intended and pinned; that journey has no
details page. The Results Enquiries tab still names a result by the results file's
QUAL_NAME;deliberate, separate product call.
journeys' details pages and summaries (the details pages previously said "Awarding Organisation
name"). Still needs content sign-off as new context.
Test plan
directly in the Postgres session row before a page GET, a grade POST and the summary
Closes #410