-
Notifications
You must be signed in to change notification settings - Fork 9
Version 2.12.0 #4112
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Version 2.12.0 #4112
Conversation
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
* This prevents unlimited write access in case a running container gets compromised * The directories where the app needs write access are mounted as volumes in the Dockerfile. In addition to the rails directories, the shell.sh script also needs write access to certain directories
* Drop invalid headers already at the load balancer instead of forwarding them to the applica tion Jira-Issue: MAV-1580
Thomas suggested a refactor which considerably shortened and clarified, as well as possibly improving performance
* This policy will periodically delete images older than 3 months Jira-Issue: MAV-1582
Adds formatted address as a hint under school names on the class list import page, to help differentiate schools with identical names. This aims to prevent misselection, especially with increased number of schools on mavis for the flu programme.
* Adding the default security group to the terraform configuration will replace the existing default security group. This way, the ingress and egress of the existing one gets removed Jira-Issue: MAV-1577
If a delivery site is selected, but the vaccine method means that there's only one possible delivery site, we can ignore the provided value. This fixes a bug where if the user were to select injection and then select a delivery site, but then go back and select nasal spray, the delivery site for injection would still come through and it would be invalid for nasal spray. Jira-Issue: MAV-1656
In the prototype it's written as a singular, "Community clinic". Because of how the sessions are created, this won't affect any existing ones in production but it will for the next academic year.
This allows us to refactor the `Patient#triage_status` method to avoid the need to support passing in both a `programme_id` and a `programme`. Jira-Issue: MAV-267
Rather than relying on the database to set the value we can pass it in to the create method. This is necessary to support tests which modify the current time, ensuring the `sent_at` value reflects what we'd expect in the test. Jira-Issue: MAV-267
This ensures that when we update these status models to take in to account the academic year, the email criteria will update automatically. Jira-Issue: MAV-267
This adds a new concern which can be shared across a number of different models where the records should be in some way associated with an academic year based on one of the date/time fields of the model. By having a single concern we avoid having duplicate code across the individual models. Jira-Issue: MAV-267
This adds a new column to all three patient status models (consent, triage and vaccination) as we now need to be able to filter status by specific academic years in various views across the service. In the follow up commits various parts of the service will be amended to support this new column. Jira-Issue: MAV-267
With the new `academic_year` column that was added in the previous commit we can now ensure that new status models are created using this column. Jira-Issue: MAV-267
This updates the three patient status models (consent, triage and vaccination) to include the academic year when generating a status response. In that way, only consents, triages and vaccination records relevant to the current academic year are used to generate the status. Jira-Issue: MAV-267
In any places where we're currently checking the status of the patient, this updates it to take the current academic year in to account. Jira-Issue: MAV-267
This updates the various scopes responsible for determining the status of a patient to include an argument for the academic year to ensure the right status is checked. Jira-Issue: MAV-267
Bumps [with_advisory_lock](https://github.com/ClosureTree/with_advisory_lock) from 5.3.0 to 7.0.1. - [Release notes](https://github.com/ClosureTree/with_advisory_lock/releases) - [Changelog](https://github.com/ClosureTree/with_advisory_lock/blob/master/CHANGELOG.md) - [Commits](ClosureTree/with_advisory_lock@with_advisory_lock/v5.3.0...with_advisory_lock/v7.0.1) --- updated-dependencies: - dependency-name: with_advisory_lock dependency-version: 7.0.1 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
Some patients will receive a second flu dose and therefore we need to increase the maximum dose sequence for the programme to allow that. Jira-Issue: MAV-1666
Include academic year in status models
Increase flu maximum dose sequence
Ignore delivery site if there's only one
Rename "Community clinics"
To `PatientSearchForm` to reflect the fact that this is only used for filtering patients, whereas in a follow up commit we will be adding a class that does similar but for searching through sessions.
To `AppPatientSearchFormComponent` since it's for use with the patient search form, and we'll have a new component added in a later commit that renders a similar component for searching sessions.
This allows us to use the `RequestSessionPersistable` concern in cases where the key needs to be dynamic, for example in the search forms.
To `_clear` to make it clear (hehe) that this isn't an attribute related to filtering in the search form and instead performs an action.
From the `RequestSessionPersistable` concern, as we'll be using this concern in the search form which doesn't require a current user to be specified.
This updates the `PatientSearchForm` to store attributes in the session using the `RequestSessionPersistable` concern to avoid code duplication.
Add patients when creating new sessions
To `appear_in_programmes` to make it clearer what this scope represents. Initially I was going to go with `eligible_in_programmes` but I wanted to avoid the word eligible as it's not quite correct. For example, a patient may be eligible for a programme based on their year group, but only exist in sessions where that programme isn't administered at their year group, therefore they remain eligible, but wouldn't show in those sessions for that programme. Jira-Issue: MAV-1293 Jira-Issue: MAV-1429
This makes a number of improvements to the `appear_in_programmes` scopes on the `Patient` and `PatientSession` models: - The `PatientSession` scope no longer needs an academic year. This is because the academic year can come from the associated session. This prevents the scope being used for a different academic year to the session which could cause unusual bugs. - The logic of the `PatientSession` scope has been fixed to ensure that patients who are eligible for a programme based on their year group, but not eligible in a particular session (perhaps because the year groups aren't administered at the location), don't appear in the query. This fixes the possibility of a patient appearing incorrectly if they go to a school, but aren't eligible for any of the programmes administered at the school. Specifically, this fixes an issue where now that multiple sessions can exist for the same location, if a patient was eligible in one of the sessions they were appearing in all of them regardless of programme. - Both scopes have been updated to ensure that patients who aren't in any sessions for any particular academic year are excluded from the results, ensuring they don't appear in the wrong place. For example, at the moment, if a patient was eliglble for a programme one year, they'll continue to show in all subsequent academic years. The method `Session#programmes_for` already worked like this, but a mismatch between the scope and this method meant it was possible for a patient to appear in a session, but with no eligible programmes, leading to bugs such as this one: https://good-machine.sentry.io/issues/6770236206/ Jira-Issue: MAV-1293 Jira-Issue: MAV-1429
Clarify `in_programmes` scope on patients and patient sessions
* The ECS service ignores task definition changes and must be explicitly redeployed to run with the updated task definition. This wasn't an issue earlier when the old infrastructure was recreated from scratch during every deployment. * The DB secret needs always to be fetched, regardless of whether the DB got redeployed or not
Fix data replication workflow
Until we show sessions for both the current and the next academic year, we need to onboard organisations on to the current academic year otherwise no sessions are visible. This is mostly only relevant for the tests at the moment.
Onboard organisations in to current academic year
Bumps [pg](https://github.com/ged/ruby-pg) from 1.5.9 to 1.6.0. - [Changelog](https://github.com/ged/ruby-pg/blob/master/CHANGELOG.md) - [Commits](ged/ruby-pg@v1.5.9...v1.6.0) --- updated-dependencies: - dependency-name: pg dependency-version: 1.6.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
It used to have `.downcase` as part of the text in the UI
This fixes the logic on when to show a vaccination record to ensure that all vaccination records from previous academic years for non-seasonal programmes show. The previous logic meant that historical vaccination records would be hidden as the logic was reversed. Jira-Issue: MAV-1691
Ensure historical vaccination records are shown on patient pages
Fix the text in the "Select a default batch" header
Bumps [dry-cli](https://github.com/dry-rb/dry-cli) from 1.2.0 to 1.3.0. - [Release notes](https://github.com/dry-rb/dry-cli/releases) - [Changelog](https://github.com/dry-rb/dry-cli/blob/main/CHANGELOG.md) - [Commits](dry-rb/dry-cli@v1.2.0...v1.3.0) --- updated-dependencies: - dependency-name: dry-cli dependency-version: 1.3.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
This fixes the confirmation labels shown as part of the verbal consent journey to match the designs in the prototype. Specifically the `DraftConsent` model was missing locale strings for the `response` attribute. Jira-Issue: MAV-1693
Fix content of verbal consent labels
Move academic year default from argument definition to call method to ensure Rails is loaded before accessing AcademicYear model
This fixes the confirmation labels shown as part of the verbal consent journey to match the designs in the prototype. The original commit that attempted to fix this 8ba778e didn't work correctly. Jira-Issue: MAV-1693
Remove academic year default assignment in CreateSession CLI command
|
thomasleese
approved these changes
Jul 30, 2025
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.
No description provided.