- [PI-605] Bulk ETL (transform layer)
- [PI-582] Read MHS Device
- [PI-643] Add status to Device Reference Data
- Dependabot: slack-github-action, pydantic
- [PI-528] Collapse versioning to v1
- [PI-581] MHS Device with Device Reference Data
- [PI-601] Workspace destroy, use main branch as fallback
- [PI-601] Workspace destroy, use main branch if branch no longer exists
- [PI-617] Stream bulk LDIF into blocks of party key
- [PI-527] Swagger fix
- [PI-592] GSI Upgrade
- [PI-590] Read/write by alias
- [PI-508] Search DeviceReferenceData
- [PI-578] Create MHS Device
- [PI-512] AS Interactions DeviceReferenceData
- [PI-593] Readme updates
- [PI-594] More smoke tests
- [PI-575] Remove implicit OK from responses
- [PI-558] Add search wrapper
- [PI-591] Better postman
- [PI-293] E2E tests with apigee
- [PI-601] Destroy workspaces on PR close
- [PI-585] PR/release CI builds in dev
- [PI-555] Remov fhir from create device endpoint
- [PI-556] Remov fhir from read device endpoint
- [PI-559] Remov fhir from make file
- [PI-530] Clean up fhir
- [PI-571] Recreate swagger
- [PI-589] Publish swagger spec int
- [PI-565] Add EPR questionnaires
- [PI-577] Create Message Set Device Reference Data
- [PI-574] CPM Smoke tests don't write data to DB
- [PI-551] Remove FHIR from Read CPM Product flow
- [PI-553] Remove FHIR from Delete CPM Product flow
- [PI-552] Remove FHIR from search CPMProduct
- [PI-557] Remove search Device
- [PI-560] Proxy naming
- [PI-563] Read a Questionnaire
- [PI-546] Fix ETL item exists failure
- [PI-501] Create Device Reference Data
- [PI-503] Read Device Reference Data
- [PI-536] Create Cpm Product without FHIR
- [PI-535] Read Product Team without FHIR
- [PI-548] Sonarcloud configuration
- [PI-365] Locust load testing
- [PI-276] Proxygen Spec
- [PI-562] Feature Tests for CpmProduct
- [PI-533] Create Product Team without FHIR
- [PI-534] Errors without FHIR
- [PI-504] Delete product
- [PI-498] Search products
- [PI-549] Fix flaky CI
- [PI-505] Create EPR Product
- [PI-538] Increase rate limiting
- Dependabot: pre-commit
- [PI-497] Read a CPM Product
- [PI-543] Remove snapshot from etl
- [PI-473] Serialise tags more nicer
- [PI-522] Shorten lambda name
- [PI-525] Update path structure for ProductTeams and Products
- [PI-465] Extract worker bug
- [PI-479] SDS endpoint error messaging
- [PI-515] Drop tags field by default when searching tags
- [PI-520] Don't do SDS smoke test for dev-sandbox
- [PI-495] Generating Product Ids
- [PI-496] Create CPM product
- [PI-519] Spike CI pipeline - terraform-base-build failure
- [PI-477] query_by_tag ignore chunky device fields
- [PI-506] Upgrade lambda memory
- [PI-493] Generating Party Keys
- [PI-494] Generating ASIDs
- [PI-499] CI s3 tests are running twice
- [PI-513] Unit test post request failing
- [PI-219] Upgrade to Python 3.12
- [PI-491] Case-insensitive search
- [PI-302] SDS Smoke Test
- [PI-245] Matrix Testing
- [PI-468] Bulk and upload fixes
- [PI-445] ETL v2
- [PI-452] Sonarcloud fixes
- [PI-271] Apigee key fixes
- [PI-476] Split ETL lambdas
- [PI-475] Query by tag
- [PI-470] Hide inactive devices
- [PI-305] Add product to app CI
- [PI-279] Block ref sandbox deploy workflow
- [PI-469] SDS search use query_by_tag
- [PI-379] Delete apigee proxy after smoke tests
- [PI-447] SDS search endpoints
- [PI-446] Repo v2
- [PI-285] Questionnaire Response v2
- [PI-464] Device tags in repo
- [PI-392] updated_on after any Device modification
- [PI-381] pentest: clean up default vpc security groups
- [PI-444] Domain v2
- [PI-285] Questionnaire v2
- [PI-362] SPIKE - Write load test code
- [PI-357] Automatic snapshots of ETL
- [PI-454] Delete corrupted workspace variable check
- [PI-206] Complete "retry" trigger
- [PI-456] Turn off changelog in dev, ref & int
- [PI-457] Run update sub-ETL on loop
- [PI-214] ETL debugger fix
- [PI-450] ETL translation error
- [PI-451] Improves ETL logging, may fix [PI-450] by allowing ldif deletions by replacing with empty value
- [PI-437] Sonarcloud improvements
- [PI-435] REDLINE Repo changes
- [PI-360] Deployment of changelog
- [PI-449] Batch up changelog changes
- [PI-443] Run entire sds bulk transform/load in batches of 250k to save lambda memory and improve CPU time
- [PI-319] Rename lambda connectivity module
- [PI-208] ETL notify lambda and slack hook
- [PI-371] Prepare manual snapshots
- [PI-290] Rename and document SDS Bulk test data
- [PI-207] Etl state lock lambda
- [PI-318] Seperate cache
- [PI-179] Improve Slack messaging for deployments
- [PI-385] PENTEST - reject HTTP and enable access logs on S3 buckets
- [PI-322] State machine lambda error messages truncated
- [PI-346] Update now includes modify changes, plus testing suite
- [PI-347] Updates implemented sequentially
- [PI-358] Disable SDS ETL update timer on persistent environments
- [PI-342] Add redacted-fields to context loggers
- [PI-376] Check releases fully rebased on main
- [PI-344] Added smoke test role
- [PI-320] Add created_on, updated_on and deleted_on fields to a Device
- [PI-373] authoriser fix
- [PI-172] spec in confluence and github
- [PI-275] fix connections between SDS FHIR and CPM
- [PI-336] Changelog deletes
- Dependabot (pydantic)
- [PI-341] Prod permissions
- [PI-268] Search for a device
- [PI-321] Inactive devices not returned during search
- [PI-315] Update trigger
- [PI-343] Remove people branch
- [PI-311] Smoke tests
- [PI-213] Connect to LDAP
- [PI-222] Connect to LDAP via VPC endpoint
- [PI-307] Deploy user workspaces to qa environment
- [PI-292] Prod bulk data (SDS ETL)
- [PI-180] Smoke tests
- [PI-205] Updates trigger
- [PI-288] Remove feature tests
- [PI-272] Enable APIKey
- [PI-282] Fix int deploy
- [PI-260] Questionnaire responses in ETL
- [PI-193] Search for a Device (MOCK)
- [PI-278] Fix expired workspace
- [PI-281] Fix Redundant workspace deletion
- [PI-223] LDAP search on Lambda
- [PI-240] Domain name updates
- [PI-203] Transform and load
- [PI-192] create spine device questionnaire
- [PI-191] create spine endpoint questionnaire
- [PI-229] Github Actions workflow run names
- [PI-201] ETL: Extract worker
- [PI-204] ETL: Bulk trigger
- [PI-45] DNS
- [PI-221] Sonarcloud security hotspot fixes
- [PI-187] Questionnaire response validation logic
- [PI-200] Parsing LDIF files
- [PI-122] Proxygen in the CI
- [PI-196] SDS ETL step function
- [PI-131] Swagger narrative
- [PI-158] Generate Product ID
- [PI-129] Postman collection from local tests
- [PI-165] AWS environments
- [PI-166] Versioning
- [PI-162] Missing destroy permissions
- [PI-139] Fine-grained lambda permissions
- [PI-138] End-to-end feature tests run locally
- [PI-82] Device e2e
- [PI-143] DynamoDb errors
- [PI-81] Translation layer (FHIR Device)
- [PI-145] Switch id to identifier
- [PI-80] Domain logic for Device
- [PI-127] PR feedback
- PI-127 Rename Product to Device
- [PI-118] End-to-end product team endpoints
- dependabot (datamodel-codegen)
- [PI-146] Lambda timeouts
- [PI-128] Less Zealous Caching
- [PI-134] Developer Role
- [PI-124] Revert Domain to AR model
- [PI-130] Move Check Branch to the beginning of CI Pipeline
- [PI-110] Step chain refactor
- [PI-100] NHS Context logging
- Dependabot: pydantic, datamodel-codegen
- [PI-120] Initial Apigee instance
- [PI-77] Translation layer for FHIR Organization to ProductTeam
- [PI-73] Error Handling
- [PI-125] FHIR / Swagger / Pydantic generation
- [PI-000] Dependabot
- [PI-000] debug
- [PI-75] Create general table and repository interface
- PI-112: Refactor API Gateway Terraform
- [PI-53] Swagger models and a REST API that calls domain logic
- [PI-52] ProductTeam Domain logic
- [PI-107] Destroy workspaces
- [PI-72] Validate ODS Code
- [PI-71] Created releases