Skip to content

v0.2.0

Compare
Choose a tag to compare
@seanmcilvenna seanmcilvenna released this 15 Dec 21:19
· 639 commits to master since this release
ab5a102

Epic

Progressive Query: NHSNLink can perform a progressive query (IP resources first, then query for SDE)

NHSNLink successfully pulls data from HCA's sandbox (Alpha)

Beta installation and configuration MM

Address errors found in the Fortify Scan from June 2023

Implement use of auditing capability in MVP

Build an MVP Terminology Service

Architecture

Architecture: Determine CQF Ruler failure outputs

Quantify the steps to bring BulkFHIR functionality for MVP

Progressive query-analyze the work necessary to incorporate a progressive querying approach into MVP

Evaluate feasibility and functionality associated with tagging a bundle at the patient encounter level per measure in MVP

Implications of a rolling 3-month pull

Analyze solutions for merging the same fhir resource when it exists in multiple measures

Create MVP Architecture Confluence Page

Review NHSN FHIR IG by Arch

Associate data queried and stored with the report criteria that the queries originate from

Create SRS drawings that describes MVP services

Deployment diagrams for CDC environment (Beta installs)

Create a Confluence page that summarizes MVP tenant settings

Create Confluence page for MVP Scheduling

Document validation assertions in MeasureEval

Activity diagram of MeasureDef and IG/Profile authorship and deployment

Develop stubs for API (REST interfaces) for MVP to support UI (Figma comps) requirements

Document MVP DB ERD

Review MVP Swagger and produce documentation as needed

Story

User Functionality for Viewing Reports (Pre and Post Submission)

Successfully sends a call out and accepts Monthly Reporting Plan details back via API in production

Integrate Link with MRP

Efficient Bundling of Two or More Measures

NHSNLink Deploy One Config Tool for Each Installation of Link

Test CDI and HOB Combined Measure (QA only)

Proof out query that uses bulk FHIR in EHR test environment

Test SAMS authentication in CDC Staging env

Deploy MM Beta to Stage

Debug the intermittent connectivity issues with CDC VMs for MM Beta

Data transfer to Lantana data analysts from MM Beta results

Understand current performance metrics in beta

Add remaining/new config fields to Configurator

Coordinate Incremental Testing with Leidos for API Connection

Create "dummy" facility within NHSN to test MRP

Modify the Config for the Alpha Installation at UMich to add in additional measures

Add dQM unique measure-versioning into Report

Create Location ConceptMap from Spreadsheet mapping

Beta (Prod) Manually create larger census patient list for UMich

Beta (Prod) Kickoff report generation manually via Postman for UMich

Beta (Prod) Watch logs and document interactions; debug integration issues for UMich

Beta (Prod) Execute $send endpoint on API to internal FHIR server for UMich

Validate measure report bundle

Validate FHIR structure using the FHIR Validator and NHSNMeasures IG on an Alpha Bundle

Update MVP Bundling functionality to align with updated output structure requirements

Bulk FHIR acquisition in MVP

Document BulkFHIR Findings

Link can successfully process a census of 250 patients

Link can successfully process a census of 500 patients

Link can successfully process a census of 1000 patients

Link can successfully process a census of 2500 patients

Improvements to build/deployment process for MVP in CDC on-prem environment

Test configuring OS Scheduler to execute CLI for refresh-patient-list

Test configuring OS Scheduler to execute CLI for generate-and-submit

Nebraska (Alpha): Establish connectivity to site sandbox

Identify the resources required for measure eval (hypo)

MGB (Alpha): Establish connectivity to site sandbox

Billings Clinic (Alpha): Establish connectivity to site sandbox

URMC (Alpha): Establish connectivity to site sandbox

Test Memory Overload in CQF-Ruler

Use SAMS authentication to query MRP endpoint

"Publish" The NHSN Measures

Develop appropriate tests for MRP Functionality

UMich(Beta): Configure NHSNLink Scheduler to execute CLI for refresh-patient-list every 3 hours

UMich (Beta) - Configure NHSNLink scheduler to execute CLI for generate-and-submit every day

UMich (Beta) - Configure OS scheduler to execute CLI for generate-and-submit once per week

UMich (Beta): Configure and Execute CLI for Refresh-patient-list

UMich (Beta) - Configure and execute CLI for generate-and-submit

UMich (Beta) - Send a measure bundle to staging ABS server in NHSN

URMC (Alpha): Data Seeding - Phase 1

Billings Clinic (Alpha): Data Seeding - Phase 1

Nebraska (Alpha): Data Seeding - Phase 1

Yale (Alpha): Establish connectivity to site sandbox

Yale (Alpha): Data Seeding - Phase 1

UNC (Alpha): Establish connectivity to site sandbox

HCA (Alpha): Establish connectivity to site sandbox

Ensure basic FHIR structure validation in Link

Update FHIR validation in Link to support validating USCore 3.1.1

Apply progressive query workflow to MVP Link

Validate 125-patient beta report bundle against the FHIR Validator

DevOps: Incorporate version number/and build number into each site's build

Add version/build number to report submission bundle

FHIR IG - Import updated version of NHSN Measure IG and incorporate changes into the NHSNLink codebase

MM Beta - Link can successfully process a census of 125 patients (CDI/HOB)

MM Beta - Link can successfully process a census of 125 patients (Multi-measure)

Add NHSN org ID to metadata in bundle

Metadata: Add date/timestamp per resource based on pull date/time

Full automation of census retrieval and use in Link is complete

MVP code base is all in the same branch

Set Up Link Stack for UNC Alpha testing

QA: Add test cases and/or regression testing to QA updates in Hypo measure

QA: Regression testing for Updated CQL Logic

MM (Beta): Re-pull 125-Patient Census Bundle and Validate against R4

QA Prep: MVP multi-measure testing for CDI/HOB and hypo

MM (Beta): Create and implement concept map for encounter.type

QA - Test approach/plan for automated census validation

Comment out the reference to the NHSN-specific IG in the validator

Enable FHIR Validator to check against NHSN Specific IG

Ability to set period's start date to same precision as end date

Install Multitenant MVP in the Billings/Multitenant Server in NHSN environment

Pull a new bundle using May's STU3 Patient List

BULK FHIR: Test use as patient census at UC Davis

Set up unit tests to ensure validation is accurate

Pull incremental beta bundles for MM hypo

Determine whether FHIR Validator is working

Pull STU3 patient list for May and for June for QA to use

Yale (Alpha): Repull alpha bundle

FHIR structure validation

MVP dev/test environments and pipeline cleanup

DevOps: Complete MM set up in Multi-tenant server

Enhanced unit testing on validation

QA FHIR Validation Code

Incorporation of FHIR validator in Link

QA- test FHIR Validator

QA- Load testing (MVP)

Update HAPI install

Document process for necessary valuesets for NHSNLink

Terminology server

DevOps: Deploy updated CQF Ruler in our environment

QA: Test updated version of CQF Ruler in our environment

DevOps: Deploy updated CQF Ruler in the CDC environment

QA: Test updated CQF Ruler in the CDC environment

QA: Side by side testing of updated CQF Ruler

MSSQL Setup for Windows Authentication

BULK FHIR: Populate census with patient IDs based on pt resources present in bulk FHIR response

Final export for June patient list

DevOps: Deploy MS SQL server to Dev environment (Lantana environment)

DevOps: Elevate to test MS SQL Server

QA: Generate several censuses to confirm results are the same (SQL Server)

QA: Regression testing for SQL Server

QA: Test to ensure scheduling functionality is working correctly (SQL Server and Mongo DB)

Hypo: Create Encounter.type concept map for YNHH

Deploy Link-MVP sqlserver branch to Lantana test environment for QA

Create databases in the Link-MVP test environment for the SQL Server update

Load dQM into EHR test

QA: RPS measure testing

DevOps: Create databases for DEV & Test environments in Azure MSSQL

Implement HAPI with MS SQL backend

DevOps: AllScripts connectivity

DevOps: Proxmox setup

Create data model and CRUD operations for patient data query tracing in MVP

MM Beta - Incremental bundle pull for Hypo

MM Beta: Verify IP count of automated monthly bundle report

DevOps: Test CDC build scripts

DevOps: Test CDC deploy scripts

Setup UNC Tenant in DEV/TEST Environments

Alpha UNC (CDI/HOB): Establish NHSNLink Connectivity to Facility's Sandbox Environment

Create data model and CRUD operations for shared data query tracing in MVP

Research feasibility in loading large CodeSystems into NHSNLink

Export and remove unused/old/archived devops pipelines

Validation pre-loads CodeSystem resources from a deployed folder

Create enumerated CodeSystem for SNOMED

Create enumerated CodeSystem for RXNORM

Create enumerated CodeSystem for LOINC

Ensure not using same database as other tenants

CDC Environment Training for QA

Add Profile Assertions to CQL

QA - Load Testing - MVP - 100

QA - Load Testing - MVP - 500

QA - Load Testing - MVP - 1000

QA - Load Testing - MVP - 1500

QA - Load Testing - MVP - 2000

QA - Load Testing - MVP - 3000

QA - Load Testing - MVP - 4000

QA - Load Testing - MVP - 5000

QA STU3 patient list vs Lanham list

Review Value Sets used in CQL and in data dictionary

MVP Security Scan - Path Manipulation (3)

Performance testing of CQF Ruler

Alpha MGB (Sepsis): Create Location ConceptMap

MGB (Alpha): Create concept map for Encounter.type

DevOps: Update Epic Beta version for NHSNLink Application

Populate trace and query records when performing a FHIR REST API request

Populate OriginalResource field in PatientData immediately following query

QA Test: MVP multi-measure validation for CDI/HOB and hypo

Provide information to user when requests result in deserialization exception

QA needs conditional API endpoints for DELETE functionality

Confluence documentation page on QA Test Data: Structure, Location, and Usage

Security: Resolve new NEUSS scan result issues

QA: Verify Encounter.class mapping with correct codes in submission bundle

QA: Verify Location Mapping to NHSN Location codes

QA: Review validation of submission bundles

Integrate validation in MVP report generation

Create a database to store validation reports

Successful store validation reports in the newly created database

Include query plan definition in submission bundle

Finalize changes to use core FHIR validation libraries instead of HAPI FHIR validation libraries

Change target branches to reflect immediate plans

Update deployments to use development

Get logback piping to a database

Create a Query Plan for ACH (this doesn't include supplemental data)

QA: Regression testing upon change for ACH dQM

Persist report generation metrics

Develop rest controller/endpoint for reporting metrics

Security (Log Forging): BulkQuery logging (09/28/2023)

Automatically validate and persist results during report generation

Create rest endpoint to retrieve system logs

Validate census list from CCL scripts at Billings

Support persistence categories for each validation message/result

Determine and persist validation result categories

Change Query Plan configuration to skip supplemental data check when specified

Set Up Link Stack for Geisinger Alpha testing

QA: ACH dQM/VTE measure testing Pt. I

FHIR Validation: Produce a clean validation report for Michigan Medicine Beta Report bundle

FHIR Validation: Produce a clean validation report for Michigan Medicine Beta Report Monthly bundle - Month 2

Use configurable time zone for census acquisition

Stub out Angular App UI

DevOps: Deploy the angular app to deploy in CD/CI pipeline

QA: Accuracy testing on FHIR Validator

Security: Nessus scan remediation for 10.31.2023

QA: VTE measure testing Pt. II

FHIR Validator: Performance testing of 500 patients bundle

FHIR Validator: Performance testing of 1000 patients bundle

FHIR Validator: Performance testing of 2000 patients bundle

FHIR Validator: Performance testing of 4000 patients bundle

Update Hypo Query Plan

QA: Query Plans

Validation improvements implemented

Prepare release candidate: Create release candidate branch

Run security scans on MVP development branch

Prepare release candidate: Vulnerabilities addressed

QA: QA CQL Updates for Hypo and ACH dQMs

Creation of Powershell script to test authentication

Modify $test-fhir endpoint

Identify/Review differences for validation of submission bundles

Change Request

Ability to Generate a Report

User Functionality by User Type/Admin Settings

Users can log into NHSNLink's UI using SAMs authentication

Census requirements change control

Request for two time periods of beta data to test ability to 'stitch' encounters together

Configurable authentication

Establish a list of allowed users/emails

Update deployment documentation

Ability to use PEM-formatted keys in Tenant's Epic auth configuration

Changing MVP to Option A bundling

Jase Health Census

Pre-qual notifications to CoLab sites and Resubmissions

View error messages related to pre-qualification

View and Manage Tenant/Facility Configuration Settings for installation and maintenance

Submission Report bundle review

HAPI FHIR Server to be populated with RxNorm codes to act as TX server

Display performance metrics per bundle

Audit log view

Evaluate impact of data override for Option A

Use MS SQL Server as the database (switch out MongoDB)

Deployment strategy on schema (MVP code change from MongoDB to MSSQL server)

Understand release process of FHIR validate-n-ator in MVP

Assess the feasibility and LOE to import CSV files via Link and translate to FHIR for RPS

Investigate data caching requirements for RPS measure

SAMS Data Exchange SDX

Capture requirements for Terminology Service

Define client needs around terminology evaluation during validation process

Billings CCL Script Census set up: Confirm that the format in the CCL script list can be utilized

Billings CCL Script Census retrieval

Remove NRTs from ACH dQM Bundles

Spike

SPIKE: Evaluate UC Davis' ability to acquire patients via FHIR Bulk Data API

Research what is needed to support Site Enrollment for using NHSNLink

SPIKE: Determine how Link will receive and deliver bulk FHIR (different format)

Gather, research, and analyze the aligned patient resource data elements to Automate Alpha and Beta Testing (QA)

Large team estimation in Scrum for User Story Point estimation process in SDLC

Pre-qualification strategy/capability

Enrollment process: Refine onboarding screening and define details needed to set up a new NHSNLink tenant

Performance improvements on FHIR validator and bundling time in staging environment

QA: Solidify requirements for HOB/CDI with Measure Dev Team

Sub-task

QA Subtask

QA - Smoke test

QA - prepare patient list for testing

QA - Validate current version of CQL has hypo code with Location resource

QA - Create test scenarios to test Hypo measure in CQL happy path

QA - Create edge case test scenarios to test Hypo measure in CQL

QA STU3 patient list vs Lanham list

Simplify the requirements and create a excel sheet to cover the required clinical scenarios

Create test data based on the clinical scenarios included in requirements

Validate test data through NHSNLink and confirm expected behavor

Develop clinically relevant scenarios with dQM lead

Input above scenarios in spreadsheet

Create dataset based on above scenarios

Run dataset against measure through Link and validate results

Develop clinically relevant scenarios with dQM Lead

Input clinical scenarios from LNK-1419 in spreadsheet

Create dataset based on clinical scenarios

Run dataset against measure through Link and validate results

Load ACH/VTE Measure ehr- test for running data sets in LINK

Task

Delay init of API to support docker-compose deployments

Create Release Candidate branch in codebase for Michigan Med Beta release at CDC

Draft the Updated Roles and Responsibilities Chart for Link IT Engineering

Develop proof-of-concept that utilizes CQL to enable pre-qual

Pull CDI/HOB Alpha Measure Report Bundle for MM

UC Davis (Alpha): Re-Pull HYPO Alpha Measure Report Bundle

Determine the "off-the-shelf" FHIR validator limits for validating large report bundles

MM Beta - Configure and execute CLI for refresh-patient-list that looks at "patients currently in hospital list

MM Beta - Configure and execute CLI for generate-and-submit

MM Beta - Pull report from FHIR server and make available for analysis

Document Cerner app registration process

Document scheduling requirements for report generation, data/census acquisition, etc. for MVP

Nebraska (Alpha): Conduct Smoke Test to establish connectivity

Merge the multi-branches of MVP from Git Hub into the Master branch

Billings Clinic (Alpha): Set Up Link Stack on CDC VM

Test the Link-Mongo Build on Premise

DevOps: Create a new App registration based on updated required APIs

UC Davis (Alpha): Pull the alpha test bundle and add data elements to JSON

Census Automation: Set up scheduler to restart the census acquisition

DevOps: Create an app registration in the AllScripts Developer portal

Improvements to measure testing

QA -Smoke test for Hypoglycemia measure

FHIR Validator: Embed list of IGs/versions in the FHIR Validator output report for traceability

Complete SDX spreadsheet and submit to Michael Townsend

DevOps: Create Elastic Pool for MSSQL

Review latest Host Scan results and assess for presence of remaining vulnerabilities

Hypo: Obtain robust test data for 4000+ patient list

Update sql user permissions on all tenant databases

Build *release* pipeline for QA to promote DEV to TEST, and then to DEMO

Keith onboarding into CDC environment

Automate build and deploy process for ASDV (DEV)

Automate deploying from CDC DEV to STAGING environment(s)

DevOps: Review latest host scan results from 9/24 and resolve issues

MM (Beta): Add tenant configs to Power App

MGB (Alpha): Add tenant configs to Power App

UNC (Alpha): Add tenant configs to Power App

Security: Resolve new NEUSS scan result issues (10/4)

Collaborate with Corey

Geisinger (Alpha): Add tenant configs to Power App

Combine BOTW and MVP code bases and adjust branch management strategy

Obtain synthetic dataset data for FHIR validator

QA: Generate checklist for Devs when pulling bundles

Ensure VTE measure is available to use

Pull in Updated Hypo and ACH CQLs from GitHub

Create Release Candidate branch for 0.2.0 in MVP codebase

Defect

Download and View Line Level Data need to be updated on the client to make use of the new ID system for the aggregate MeasureReport and DocumentReference

Bad extension URLs are causing errors when the FHIR Validator runs against a sample measure bundle

Address out-of-memory errors in CQF Ruler

Test Plan Creation for Memory Overload in CQF-Ruler

Epic IDs that exceed 64 char length should be hashed to a 64char hash-string

Resolve out-of-memory error during submission bundling

Unable to retrieve Patient Census lists

Unable to generate report on TEST- UI

Duplicate Location.types are being created during normalization in the Bundle file

MVP Security Scan - Header Manipulation (6 issues)

MVP Security Scan - Mass Assignment: Insecure Binder Configuration (14 issues)

MVP Security Scan - Mass Assignment: Sensitive Field Exposure (6 issues)

MVP Security Scan - OpenAPI Misconfiguration: Missing Security Schemes (3 issues)

MVP Security Scan - Password Management: Hardcoded Password (3 issues)

MVP Security Scan - Privacy Violation (30 issues)

MVP Security Scan - Race Condition: Singleton Member Field (13 issues)

MVP Security Scan - Server-Side Request Forgery (4 issues)

Fhir Validator needs better error messaging for missing required data elements in the associated resource

Fhir Validator doesn't trigger errors for missed data elements in Encounter resource

Fhir Validator doesn't trigger errors for missed data elements in Medication Request resource

Fhir Validator doesn't trigger errors for missed data elements in Location resource

MeasureReport resource are referencing the wrong Measure URLs

MVP Security Scan - Weak Encryption (1 issue)

MVP Security Scan - Log Forging (3 issues)

MVP Security Scan - OpenAPI Misconfiguration: Missing Error Handling (8 issues)

MVP Security Scan - Unreleased Resource: Database (1 issue)

MeasureReport.measure base URL update

Duplicate Patient ID in Bundle generated under Entry List

Encounter.type with the correct code does not meet the IP

Patients incorrectly included in submission bundle

Patient with Encounter status and incorrect time format for the encounter status appears in IP

When the Encounter.location period is outside of the encounter period patient should not meet IP

Report generation for Cron job functionality is not working as expected

When the Observations.effectiveDateTime is outside the InitialPopulation.period the patient should not meet IP

Investigate discrepancies between submission reports for synthetic data on DEV and TEST environments

Tenant Config: Specimen resource is not applying parameters from tenant config and including everything available from tenant in submission bundle

Duplicate resources are appearing in the submission bundle

FHIR Validator: Long response times