Skip to content

Releases: rticommunity/rticonnextdds-medtech-reference-architecture

v1.2.1 - Testing and CI Hardening

20 Apr 21:44

Choose a tag to compare

v1.2.1 - Testing and CI Hardening

This patch release strengthens test coverage, CI reliability, and developer quality gates across the MedTech reference architecture. It includes no intentional breaking changes.

Highlights

  • Added reproducible Docker-based test infrastructure for build and test execution.
  • Added markdown quality checks with markdownlint enforcement in local and CI workflows.
  • Added stronger configuration validation tests for module contracts and argument handling.
  • Added security certificate status validation tests for both system and Module 04 security trees.
  • Added comprehensive pytest suites for:
    • Module 01 (build, launch, DDS communication, end-to-end flow)
    • Module 02 (recording/replay integration, XML validation)
    • Module 04 (all four threat modes, XML validation)
  • Added a GitHub Actions CI pipeline with broad coverage across linting, build, and module test jobs.
  • Added root and per-module Python tooling configuration for linting, formatting, and pytest.
  • Added pre-commit hooks and development dependency definitions to improve local contributor workflows.

Compatibility and Impact

  • Version type: PATCH (SemVer)
  • Backward compatibility: Maintained
  • Intended impact: Higher confidence in changes, earlier defect detection, and more consistent local/CI results

Contributors

  • @franporcel - Testing infrastructure, CI workflow, GitHub CI actions pipeline
  • @wcoleman - Docker test infrastructure, functional and documentation review

Full Changelog

v1.2.0 — Unified Build/Launch Orchestration & macOS Support

14 Apr 18:27

Choose a tag to compare

What's New

This release overhauls how the reference architecture is built and launched,
introduces Python-based security artifact generation, and adds full macOS
(Python 3.9) compatibility.

What's Changed

Centralized Build & Launch

  • New top-level build.py and launch.py replace all per-module scripts
    — usage: python3 launch.py <module> [apps] [-s]
  • resource/config/scenarios.json provides declarative scenario definitions
    across all modules
  • module.json descriptors added for all four modules
  • resource/python/scripts/ package handles NDDSHOME resolution,
    architecture detection, OpenSSL discovery, and Connext library path setup

Security Artifact Generation

  • Python-based generation via dds_security.py and security_tree.py
    with templates for CA config, governance, identity, and permissions
  • Reorganized into a three-tier CA hierarchy:
    TrustedRootCa → TrustedIdentityCa → TrustedPermissionsCa
  • Hierarchical ca/, domain_scope/, identity/ layout under both
    system_arch/security/ and modules/04-security-threat/security/

macOS / Cross-Platform

  • Python 3.9 compatibility across all scripts (required for macOS default Python)

Build System

  • Top-level CMakeLists.txt for unified CMake build orchestration
  • rticonnextdds-cmake-utils converted from git submodule to CMake FetchContent

Breaking Changes

  • Per-module scripts/ directories (modules 01, 03, 04) have been removed
    — use the top-level build.py / launch.py instead
  • system_arch/scripts/platform_setup.py moved to
    resource/python/scripts/platform_setup.py
  • Security artifact directory layout restructured — re-run setup_security.py
    and setup_threat_security.py to regenerate artifacts

Full Changelog

v1.1.0...v1.2.0

v1.1.0 — Module 04: Security Threat Demonstration

30 Mar 18:44
9355028

Choose a tag to compare

What's New

Second feature release of the RTI MedTech Reference Architecture, adding a security threat demonstration module and modernizing Module 01's Python stack.

Module 04 — Security Threat Demonstration

Two Python/PySide6 GUI applications (Threat Injector and Threat Exfiltrator) that simulate real-world DDS security attack scenarios — Rogue CA, Forged Permissions, and Expired Certificate — against the operating room bus. Includes dedicated security infrastructure (setup_threat_security.sh, OpenSSL configs, XML governance and permissions templates), DDS configuration (ThreatParticipantLibrary.xml, ThreatQos.xml), launch/kill scripts, and a local DdsUtils.py utility.

Module 01 — Changes

  • Migrated Arm.py and PatientMonitor.py from PyQt5 to PySide6 (updated imports, enum-style Qt constants, Signal instead of pyqtSignal, app.exec() instead of app.exec_())
  • Replaced manual execute_process codegen in CMakeLists.txt with proper connextdds_rtiddsgen_run targets for Python type generation; added refArchTypesPy custom target
  • Updated README to reference PySide6 instead of PyQt5

System Architecture

  • Removed volatile durability override from secure-log DataReader QoS profile in Qos.xml
  • Updated rticonnextdds-cmake-utils submodule to latest commit
  • Added .gitignore for Module 04 security directory to exclude generated certificates, keys, and OpenSSL CA database files

Dependencies

  • RTI Connext DDS 7.3.0
  • RTI Code Generator (rtiddsgen) 4.3.0
  • CMake >= 3.11

Contributors

  • @wcoleman — Module 04 implementation, Module 01 PySide6 migration, build and QoS fixes
  • @franporcel — Functional and documentation review

Full Changelog

v1.0.0...v1.1.0

v1.0.0 — Initial Stable Release

25 Mar 18:36

Choose a tag to compare

What's New

Initial stable release of the RTI MedTech Reference Architecture — a modular,
DDS-based demonstration of connected medical technology systems built on
RTI Connext DDS.

Module 01 — Operating Room

Orchestrator (C++), PatientSensor (C++), ArmController (C++), PatientMonitor
(Python/PySide6), and Arm (Python/PySide6) applications demonstrating a
connected surgical environment with renovated real-time GUIs featuring waveform
rendering, arc gauges, and security status indicators.

Module 02 — Record and Playback

Recording Service and Replay Service configurations for capturing and replaying
DDS data from the operating room.

Module 03 — Remote Teleoperation

Routing Service and Cloud Discovery Service configurations supporting three WAN
communication scenarios (direct, cloud-relayed, and cloud-brokered) with
cross-platform launch scripts (bash and batch).

System Architecture

  • Shared DDS type definitions (Types.xml)
  • QoS profiles for secure and non-secure communication
  • XML Application Creation (DomainLibrary, ParticipantLibrary)
  • DDS Security infrastructure (CA, identities, governance, permissions)
  • Security setup scripts for certificate generation and signing

Dependencies

  • RTI Connext DDS 7.3.0
  • RTI Code Generator (rtiddsgen) 4.3.0
  • CMake >= 3.11

Contributors

  • @franporcel — Modules 01–03, teleoperation scenarios, renovated GUIs
  • @wcoleman — Refactoring, naming conventions, security consolidation, release infrastructure

Full Changelog

https://github.com/rticommunity/rticonnextdds-medtech-reference-architecture/commits/v1.0.0