Skip to content

Conversation

@dlzhry2nhs
Copy link
Collaborator

@dlzhry2nhs dlzhry2nhs commented Feb 9, 2026

Summary

  • Routine Change

Simple architecture change to enable coding work to begin on the Lambda. Details of the ticket are no longer relevant, so will update in JIRA. Discussed with architect who was happy with the changes.

  • Adds a stream to the delta table
  • Adds a new MNS Publisher Lambda function which will read from the new delta stream

This approach minimises the number of new components we will need while ensuring that we are only publishing MNS events where the event was successfully persisted across the whole system i.e. the events table and delta.

Have raised a couple of questions, which I'm happy to look into under this PR or

Reviews Required

  • Dev

Review Checklist

ℹ️ This section is to be filled in by the reviewer.

  • I have reviewed the changes in this PR and they fill all of the acceptance criteria of the ticket.
  • If there were infrastructure, operational, or build changes, I have made sure there is sufficient evidence that the changes will work.
  • If there were changes that are outside of the regular release processes e.g. account infrastructure to setup, manual setup for external API integrations, secrets to set, then I have checked that the developer has flagged this to the Tech Lead as release steps.
  • I have checked that no Personal Identifiable Data (PID) is logged as part of the changes.

@github-actions
Copy link
Contributor

github-actions bot commented Feb 9, 2026

This branch is working on a ticket in the NHS England VED JIRA Project. Here's a handy link to the ticket:

VED-981

@sonarqubecloud
Copy link

policy = data.aws_iam_policy_document.mns_outbound_events_sqs_policy.json
}

# TODO - (follow on once we have basics set up so Lambda coding can start)
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Unless strong objections - and happy to do it in this PR if required - I would propose merging this PR in, subject to approval, as-is so that Lambda function code can be worked on in parallel.

Someone can then pick up the remaining bits of platform changes, but it allows us to at least set up the foundations on the staging branch if we merge asap.

Namely, I think the remaining changes would include:

  • KMS encryption for SQS since the data will include PID
  • Add DLQ and redrive settings for the outbound mns events queue
  • Optional - turn the relevant components into a single mns_publisher module.
  • Optional - (might wanna agree testing approach first) add a switch so this feature is only toggled on in environments we want it. May also need to create a test queue for testing that published events are actually broadcast and received by subscribers.

Copy link
Contributor

@edhall-nhs edhall-nhs left a comment

Choose a reason for hiding this comment

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

Nice solution. Good to see it working as well 🎉
Agree that those TODOs can be worked on in parallel with the lambda implementation

@dlzhry2nhs dlzhry2nhs merged commit 33f4bba into staging/VED-16-mns-vacc-event-notifications Feb 12, 2026
17 checks passed
@dlzhry2nhs dlzhry2nhs deleted the feature/VED-981-create-mns-events-sqs-queue branch February 12, 2026 09:32
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.

3 participants