Skip to content

Conversation

thomasleese
Copy link
Contributor

Testing has finished on this release.

thomasleese and others added 30 commits August 13, 2025 11:20
This removes the session outcome filter from the children tab in a
session page as the programme and session outcomes are going to be
combined together in to one and this is not necessary.
This was being used to count the number of vaccinations given in a
session. Instead of using this status, we can count the number of
administered vaccination records, which is a more accurate number
anyway.
This updates every location where the programme outcome and session
outcome are shown together in to a single outcome containing a coloured
tag for the programme outcome and the session outcome shown next to it.
This was being used to determine whether the patient had been seen in a
session, which could be replaced by checking for the presence of a
vaccination record.
We're going to be removing this status model as we don't use it anywhere
in the UI, so it can be safely removed.
This is no longer being used anywhere so it can be safely removed.
To "No outcome" to match the latest designs in the prototype.
When importing class lists or cohorts, we want to run the job to handle
any patients who may have aged out of their school to ensure that they
are moved to unknown school immediately rather than waiting until the
job runs overnight.
Now that each time will have their own workgroup, we can remove the
requirement for users to be part of the current static workgroup.

Jira-Issue: MAV-1280
Ensure triage and consent tags use the correct status colour
Combine session and programme outcome in to one
Enqueue patient aged out of school job
Bumps [pagy](https://github.com/ddnexus/pagy) from 9.3.5 to 9.4.0.
- [Release notes](https://github.com/ddnexus/pagy/releases)
- [Changelog](https://github.com/ddnexus/pagy/blob/master/CHANGELOG.md)
- [Commits](ddnexus/pagy@9.3.5...9.4.0)

---
updated-dependencies:
- dependency-name: pagy
  dependency-version: 9.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [rails](https://github.com/rails/rails) from 8.0.2 to 8.0.2.1.
- [Release notes](https://github.com/rails/rails/releases)
- [Commits](rails/rails@v8.0.2...v8.0.2.1)

---
updated-dependencies:
- dependency-name: rails
  dependency-version: 8.0.2.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.25.8 to 0.25.9.
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](evanw/esbuild@v0.25.8...v0.25.9)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-version: 0.25.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
…on-token-on-login-logout

Set / clear reporting API session token on login / logout
…ild-0.25.9

Bump esbuild from 0.25.8 to 0.25.9
- Introduces a new CLI command to report vaccination counts by programme and outcome.
- Supports filtering by date range (`--since`, `--until`), output format (`--format`: table, json, csv), programme type, outcome, team name and organisation ODS code.

Example usage:

- All vaccinations, table output (default)
mavis_cli stats vaccinations

- Filter by programme and outcome, as JSON
mavis_cli stats vaccinations --programme flu --outcome administered --format json

- Filter by date range, team and organisation, as CSV
mavis_cli stats vaccinations --since 2023-09-01 --until 2024-07-23 --organisation XYZ123 --format csv --team_name "SAIS Org 1"
…lysis

    - Introduces a new CLI command to generate consent response statistics by school, providing both date-based and days-since-request analyses in CSV format.
    - Supports filtering by organisation ODS code (`--ods_code`), optional team name (`--team_name`), optional programme type (`--programme`: flu, hpv, menacwy, td_ipv), and academic year (`--academic_year`).
    - When programme is not specified, analyses all programmes within the organisation.
    - Outputs two CSV reports: consent responses by date and consent responses by days since request sent.

    Example usage:

    - All programmes for an organisation, specific team
    mavis stats consents-by-school --ods_code ABC123 --team_name "SAIS Org 1"

    - Specific programme only
    mavis stats consents-by-school --ods_code ABC123 --programme flu

    - Filter by academic year
    mavis stats consents-by-school --ods_code ABC123 --academic_year 2023
    - Introduces a new CLI command to report comprehensive organisation statistics including cohorts, schools, communications, consents and vaccination rates.
    - Supports filtering by organisation ODS code (`--ods_code`), team name (`--team_name`), programme type (`--programme`: flu, hpv, menacwy, td_ipv), academic year (`--academic_year`), and output format (`--format`: table, json).

    Example usage:

    - Organisation statistics, table output (default)
    mavis_cli stats organisations --ods_code ABC123 --team_name "SAIS Org 1"

    - Filter by programme, as JSON
    mavis_cli stats organisations --ods_code ABC123 --programme flu --format json

    - Filter by academic year
    mavis_cli stats organisations --ods_code ABC123 --academic_year 2023
…ting-app-after-login

Add support for redirecting to reporting app after login
Bumps the bundler group with 1 update in the / directory: [activerecord](https://github.com/rails/rails).


Updates `activerecord` from 8.0.2 to 8.0.2.1
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.0.2.1/activerecord/CHANGELOG.md)
- [Commits](rails/rails@v8.0.2...v8.0.2.1)

Updates `activestorage` from 8.0.2 to 8.0.2.1
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.0.2.1/activestorage/CHANGELOG.md)
- [Commits](rails/rails@v8.0.2...v8.0.2.1)

---
updated-dependencies:
- dependency-name: activerecord
  dependency-version: 8.0.2.1
  dependency-type: indirect
  dependency-group: bundler
- dependency-name: activestorage
  dependency-version: 8.0.2.1
  dependency-type: indirect
  dependency-group: bundler
...

Signed-off-by: dependabot[bot] <support@github.com>
thomasleese and others added 25 commits August 14, 2025 17:40
Move logging line in to correct place
Fix typo in Leicestershire schools CSV
These will be used to store data from patient imports (i.e. cohort and
class imports) so we can fundamentally change the workflow of the
imports to perform pds lookups before we do patient matching.

Jira-Issue: MAV-1390
We will process these patient changesets in a background job that will
be added in an upcoming change.

Jira-Issue: MAV-1390
These are used to simplify the import code so that they don't have to
construct a new class on the fly to represent the join table, in order
to simplify the import-related code.
Once all patients from an import have been processed, including PDS
lookups, commit them all to the patients table in Mavis.
When we have a non-slow (aka fast) import, we perform these inline.
This is existing behaviour that is being back-ported to the new
pds-update-during-import flow.
This duplicates the existing feature specs that test cohort and class imports,
and runs them with the pds_lookup_during_pds feature flag enabled.
Now that we do PDS lookups on patients during the import process, it's
possible that we'll be told that an NHS number has been invalidated by
PDS. This adds support to ensure the imported patient records are
invalidated.
This was testing a very narrow edge-case which we will probably
shut-down in a following PR.

Specifically, when we find a patient using
their NHS number with PDS, and it is invalid, this was testing that the
import would invalidate the patient. However this is unlikely to happen
since the patient would have already been invalidated as a result of the
daily PDS update job. Additionally, in the future we'll remove the
find-by-nhs-number lookup as part of the new PDS lookup flows.

Jira-Issue: MAV-1390
So we have a record of which patients are removed from community clinics
because they have an unknown school.
Improve logging about patient removals
Bumps [aws-sdk-ec2](https://github.com/aws/aws-sdk-ruby) from 1.548.0 to 1.549.0.
- [Release notes](https://github.com/aws/aws-sdk-ruby/releases)
- [Changelog](https://github.com/aws/aws-sdk-ruby/blob/version-3/gems/aws-sdk-ec2/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-ruby/commits)

---
updated-dependencies:
- dependency-name: aws-sdk-ec2
  dependency-version: 1.549.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
…c2-1.549.0

Bump aws-sdk-ec2 from 1.548.0 to 1.549.0
When splitting the East of England team in to six teams, we need to make
sure that the batches, sessions and vaccination records get reassigned
to the most approriate team.

Jira-Issue: MAV-1664
Reassign vaccination records, batches and sessions
This makes a number of changes to the East of England migration script
to make sure this now runs successfully in the data replication
environment.

Specifically this ensures that consents, triages, imports and batches
are correctly migrated from the various teams.

Jira-Issue: MAV-1664
Further improvements to East of England migration
This is being triggered for immunisations imports as well as patient
imports. We also want to disable this for the next release so that we
can say with 100% certainty the new code paths won't be triggered.
There are 3 patients which have moved from Coventry to Hertfordshire
which means we shouldn't modify their original consent responses that
are part of a different team.
Only reassign consent and triages that belong to original team
We've ripped this feature out temporarily, so this test won't be able to
pass even with the feature flag enabled.
Disable PDS update during import completely
@thomasleese thomasleese requested a review from a team as a code owner August 15, 2025 15:10
Copy link

@thomasleese thomasleese enabled auto-merge August 15, 2025 15:12
@thomasleese thomasleese merged commit d33d0a0 into main Aug 15, 2025
45 of 47 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants