Skip to main content
QMSQMS
QMS
  • Welcome to your QMS
  • Quality Manual
  • Procedures
  • Records
  • Legit.Health Plus Version 1.1.0.0
    • CAPA Plan - BSI CE Mark Closeout
    • Index
    • Overview and Device Description
    • Information provided by the Manufacturer
    • Design and Manufacturing Information
    • GSPR
    • Benefit-Risk Analysis and Risk Management
    • Product Verification and Validation
      • Software
        • R-TF-012-023 Software Development Plan
        • R-TF-012-033 Software Test Plan
        • R-TF-012-034 Software Test Description
        • R-TF-012-035 — Software Test Report
        • R-TF-012-038 Verified Version Release
        • R-TF-012-039 Validated Version Transfer
        • R-TF EN 62304 Checklist
        • R-TF EN 82304 Checklist
      • Artificial Intelligence
      • Cybersecurity
      • Usability and Human Factors Engineering
      • Clinical
      • Commissioning
    • Post-Market Surveillance
  • Legit.Health Plus Version 1.1.0.1
  • Legit.Health Utilities
  • Licenses and accreditations
  • Applicable Standards and Regulations
  • Pricing
  • Public tenders
  • Legit.Health Plus Version 1.1.0.0
  • Product Verification and Validation
  • Software
  • R-TF-012-038 Verified Version Release

R-TF-012-038 Verified Version Release

Document Information​

FieldValue
Product NameLegit.Health Plus
Version1.1.0.0
Release Date2026-01-23
Document Prepared Date2026-01-23

Release Identification​

Software Product Information​

FieldValue
Product NameLegit.Health Plus
Version Number1.1.0.0
Build Number1.1.0.0
Release TypeInitial release (major)
Release Date2026-01-23
Previous Version0.0.0.0

Verification Completeness​

Verification Activities Completed​

ActivityReference DocumentStatus
Software Requirements SpecificationR-TF-012-028✅
Software Architecture DesignR-TF-012-029✅
Software Test PlanR-TF-012-033✅
Software Test DescriptionR-TF-012-034✅
Unit TestingR-TF-012-035✅
Integration TestingR-TF-012-035✅
System TestingR-TF-012-035✅
Software Test ReportR-TF-012-035✅
Risk Management ActivitiesR-TF-013-002✅

Unit and Integration Testing​

ComponentCoverageStatus
api_gateway94.5%✓ PASSED
control_plane98.0%✓ PASSED
report_builder95.7%✓ PASSED
orchestrator97.5%✓ PASSED
condition_classifier90.6%✓ PASSED
essentials86.6%✓ PASSED
expert_core78.7%✓ PASSED

Verification Results Summary​

Total Requirements Verified: 112 Requirements Coverage: 100%

Total Tests Executed: 144 Tests Passed: 143 Pass Rate: 99.9%

Verification Status: Pass

Software Configuration​

Software Configuration Items​

nameexpected-hashhashstatus
.envd2eedd61aea79d70a2212307710b3e6c5d117609d6c9d7056abe7b159b7c01a5d2eedd61aea79d70a2212307710b3e6c5d117609d6c9d7056abe7b159b7c01a5PASS
nginx.confda608ad322e0628c4f9a5fdc00388610809dd4550acfb4e7e19d903187b0a649 nginx.confda608ad322e0628c4f9a5fdc00388610809dd4550acfb4e7e19d903187b0a649PASS
docker-entrypoint.shde298058a13e53be7497a130bfe632c7cdf1583ace490c08dba7acbd2e7f0944de298058a13e53be7497a130bfe632c7cdf1583ace490c08dba7acbd2e7f0944PASS
services.yaml26f610636b7a6dc7fec8c0a97006f011e9ff2786aac0137ad48604d6a615f7e626f610636b7a6dc7fec8c0a97006f011e9ff2786aac0137ad48604d6a615f7e6PASS

Models​

Model nameLocationDevice Location
hyperpigmentation_segmenters3://skin-pathology-dl/models/visual_signs/hyperpigmentation_surface/v1.0.0/hyperpigmentation_surface_v0.0.0.ckpts3://legit-health-plus/ai-models/hyperpigmentation_segmenter/v1.0.0/weights.ckpt
hypopigmentation_segmenters3://skin-pathology-dl/models/visual_signs/hypopigmentation_surface/v1.0.0/hypopigmentation_surface_v0.0.0.ckpts3://legit-health-plus/ai-models/hypopigmentation_segmenter/v1.0.0/weights.ckpt
erythema_segmenters3://skin-pathology-dl/models/visual_signs/erythema_surface/v1.0.0/erythema_surface_v0.0.0.ckpts3://legit-health-plus/ai-models/erythema_segmenter/v1.0.0/weights.ckpt
wound_bed_segmenters3://skin-pathology-dl/models/visual_signs/wound_bed_surface/v1.0.0/wound_bed_surface_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_bed_segmenter/v1.0.0/weights.ckpt
wound_biofilm_segmenters3://skin-pathology-dl/models/visual_signs/wound_biofilm_surface/v1.0.0/wound_biofilm_surface_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_biofilm_segmenter/v1.0.0/weights.ckpt
wound_bone_segmenters3://skin-pathology-dl/models/visual_signs/wound_bone_surface/v1.0.0/wound_bone_surface_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_bone_segmenter/v1.0.0/weights.ckpt
wound_granulation_segmenters3://skin-pathology-dl/models/visual_signs/wound_granulation_surface/v1.0.0/wound_granulation_surface_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_granulation_segmenter/v1.0.0/weights.ckpt
wound_maceration_segmenters3://skin-pathology-dl/models/visual_signs/wound_maceration_surface/v1.0.0/wound_maceration_surface_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_maceration_segmenter/v1.0.0/weights.ckpt
wound_necrosis_segmenters3://skin-pathology-dl/models/visual_signs/wound_necrosis_surface/v1.0.0/wound_necrosis_surface_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_necrosis_segmenter/v1.0.0/weights.ckpt
wound_orthopedic_segmenters3://skin-pathology-dl/models/visual_signs/wound_orthopedic_surface/v1.0.0/wound_orthopedic_surface_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_orthopedic_segmenter/v1.0.0/weights.ckpt
body_surface_segmenters3://skin-pathology-dl/models/visual_signs/body_surface_segmentation/v1.0.0/body_surface_segmentation_v0.0.0.ckpts3://legit-health-plus/ai-models/body_surface_segmenter/v1.0.0/weights.ckpt
hair_loss_segmenters3://skin-pathology-dl/models/visual_signs/hair_loss_surface/v1.0.0/hair_loss_surface_v0.0.0.ckpts3://legit-health-plus/ai-models/hair_loss_segmenter/v1.0.0/weights.ckpt
crusting_classifiers3://skin-pathology-dl/models/visual_signs/crusting_intensity/v1.0.0/crusting_intensity_v0.0.0.ckpts3://legit-health-plus/ai-models/crusting_classifier/v1.0.0/weights.ckpt
desquamation_classifiers3://skin-pathology-dl/models/visual_signs/desquamation_intensity/v1.0.0/desquamation_intensity_v0.0.0.ckpts3://legit-health-plus/ai-models/desquamation_classifier/v1.0.0/weights.ckpt
erythema_classifiers3://skin-pathology-dl/models/visual_signs/erythema_intensity/v1.0.0/erythema_intensity_v0.0.0.ckpts3://legit-health-plus/ai-models/erythema_classifier/v1.0.0/weights.ckpt
excoriation_classifiers3://skin-pathology-dl/models/visual_signs/excoriation_intensity/v1.0.0/excoriation_intensity_v0.0.0.ckpts3://legit-health-plus/ai-models/excoriation_classifier/v1.0.0/weights.ckpt
induration_classifiers3://skin-pathology-dl/models/visual_signs/induration_intensity/v1.0.0/induration_intensity_v0.0.0.ckpts3://legit-health-plus/ai-models/induration_classifier/v1.0.0/weights.ckpt
lichenification_classifiers3://skin-pathology-dl/models/visual_signs/lichenification_intensity/v1.0.0/lichenification_intensity_v0.0.0.ckpts3://legit-health-plus/ai-models/lichenification_classifier/v1.0.0/weights.ckpt
oozing_classifiers3://skin-pathology-dl/models/visual_signs/oozing_intensity/v1.0.0/oozing_intensity_v0.0.0.ckpts3://legit-health-plus/ai-models/oozing_classifier/v1.0.0/weights.ckpt
pustule_classifiers3://skin-pathology-dl/models/visual_signs/pustule_intensity/v1.0.0/pustule_intensity_v0.0.0.ckpts3://legit-health-plus/ai-models/pustule_classifier/v1.0.0/weights.ckpt
swelling_classifiers3://skin-pathology-dl/models/visual_signs/swelling_intensity/v1.0.0/swelling_intensity_v0.0.0.ckpts3://legit-health-plus/ai-models/swelling_classifier/v1.0.0/weights.ckpt
xerosis_classifiers3://skin-pathology-dl/models/visual_signs/xerosis_intensity/v1.0.0/xerosis_intensity_v0.0.0.ckpts3://legit-health-plus/ai-models/xerosis_classifier/v1.0.0/weights.ckpt
wound_borders_diffused_classifiers3://skin-pathology-dl/models/visual_signs/Borders:Diffused/v1.0.0/Borders:Diffused_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_borders_diffused_classifier/v1.0.0/weights.ckpt
wound_borders_thickened_classifiers3://skin-pathology-dl/models/visual_signs/Borders:Thickened/v1.0.0/Borders:Thickened_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_borders_thickened_classifier/v1.0.0/weights.ckpt
wound_borders_delimited_classifiers3://skin-pathology-dl/models/visual_signs/Borders:Delimited/v1.0.0/Borders:Delimited_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_borders_delimited_classifier/v1.0.0/weights.ckpt
wound_borders_indistinguishable_classifiers3://skin-pathology-dl/models/visual_signs/Borders:Indistinguishable/v1.0.0/Borders:Indistinguishable_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_borders_indistinguishable_classifier/v1.0.0/weights.ckpt
wound_borders_damaged_classifiers3://skin-pathology-dl/models/visual_signs/Borders:Damaged/v1.0.0/Borders:Damaged_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_borders_damaged_classifier/v1.0.0/weights.ckpt
wound_affected_tissues_bone_classifiers3://skin-pathology-dl/models/visual_signs/Affected_tissues:Bone/v1.0.0/Affected_tissues:Bone_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_affected_tissues_bone_classifier/v1.0.0/weights.ckpt
wound_affected_tissues_subcutaneous_classifiers3://skin-pathology-dl/models/visual_signs/Affected_tissues:Subcutaneous/v1.0.0/Affected_tissues:Subcutaneous_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_affected_tissues_subcutaneous_classifier/v1.0.0/weights.ckpt
wound_affected_tissues_muscle_classifiers3://skin-pathology-dl/models/visual_signs/Affected_tissues:Muscle/v1.0.0/Affected_tissues:Muscle_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_affected_tissues_muscle_classifier/v1.0.0/weights.ckpt
wound_affected_tissues_intact_classifiers3://skin-pathology-dl/models/visual_signs/Affected_tissues:Intact/v1.0.0/Affected_tissues:Intact_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_affected_tissues_intact_classifier/v1.0.0/weights.ckpt
wound_affected_tissues_dermis_epidermis_classifiers3://skin-pathology-dl/models/visual_signs/Affected_tissues:Dermis-epidermis/v1.0.0/Affected_tissues:Dermis-epidermis_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_affected_tissues_dermis_epidermis_classifier/v1.0.0/weights.ckpt
tissue_wound_bed_necrotic_classifiers3://skin-pathology-dl/models/visual_signs/Type_tissue_wound_bed:Necrotic/v1.0.0/Type_tissue_wound_bed:Necrotic_v0.0.0.ckpts3://legit-health-plus/ai-models/tissue_wound_bed_necrotic_classifier/v1.0.0/weights.ckpt
tissue_wound_bed_closed_classifiers3://skin-pathology-dl/models/visual_signs/Type_tissue_wound_bed:Closed/v1.0.0/Type_tissue_wound_bed:Closed_v0.0.0.ckpts3://legit-health-plus/ai-models/tissue_wound_bed_closed_classifier/v1.0.0/weights.ckpt
wound_tissue_wound_bed_granulation_classifiers3://skin-pathology-dl/models/visual_signs/Type_tissue_wound_bed:Granulation/v1.0.0/Type_tissue_wound_bed:Granulation_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_tissue_wound_bed_granulation_classifier/v1.0.0/weights.ckpt
wound_tissue_wound_bed_epithelial_classifiers3://skin-pathology-dl/models/visual_signs/Type_tissue_wound_bed:Epithelial/v1.0.0/Type_tissue_wound_bed:Epithelial_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_tissue_wound_bed_epithelial_classifier/v1.0.0/weights.ckpt
wound_tissue_wound_bed_slough_classifiers3://skin-pathology-dl/models/visual_signs/Type_tissue_wound_bed:Slough/v1.0.0/Type_tissue_wound_bed:Slough_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_tissue_wound_bed_slough_classifier/v1.0.0/weights.ckpt
wound_type_exudation_serous_classifiers3://skin-pathology-dl/models/visual_signs/Type_exudation:Serous/v1.0.0/Type_exudation:Serous_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_type_exudation_serous_classifier/v1.0.0/weights.ckpt
wound_type_exudation_fibrinous_classifiers3://skin-pathology-dl/models/visual_signs/Type_exudation:Fibrinous/v1.0.0/Type_exudation:Fibrinous_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_type_exudation_fibrinous_classifier/v1.0.0/weights.ckpt
wound_type_exudation_purulent_classifiers3://skin-pathology-dl/models/visual_signs/Type_exudation:Purulent/v1.0.0/Type_exudation:Purulent_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_type_exudation_purulent_classifier/v1.0.0/weights.ckpt
wound_type_exudation_bloody_classifiers3://skin-pathology-dl/models/visual_signs/Type_exudation:Bloody/v1.0.0/Type_exudation:Bloody_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_type_exudation_bloody_classifier/v1.0.0/weights.ckpt
wound_perilesional_erythema_classifiers3://skin-pathology-dl/models/visual_signs/Perilesional_erythema/v1.0.0/Perilesional_erythema_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_perilesional_erythema_classifier/v1.0.0/weights.ckpt
wound_perilesional_maceration_classifiers3://skin-pathology-dl/models/visual_signs/Perilesional_maceration/v1.0.0/Perilesional_maceration_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_perilesional_maceration_classifier/v1.0.0/weights.ckpt
wound_biofilm_tissue_classifiers3://skin-pathology-dl/models/visual_signs/Biofilm_tissue/v1.0.0/Biofilm_tissue_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_biofilm_tissue_classifier/v1.0.0/weights.ckpt
wound_stage_classifiers3://skin-pathology-dl/models/visual_signs/wound_stage/v1.0.0/wound_stage_v0.0.0.ckpts3://legit-health-plus/ai-models/wound_stage_classifier/v1.0.0/weights.ckpt
awosi_classifiers3://skin-pathology-dl/models/visual_signs/wound_awosi/v1.0.0/wound_awosi_v0.0.0.ckpts3://legit-health-plus/ai-models/awosi_classifier/v1.0.0/weights.ckpt
acneiform_detectors3://skin-pathology-dl/models/acne_detection_and_categorization/v1/1121_1537_m006_11M_DT1_preCOCO_bs16_imgsz896_e95_cm30/weights/best.pt"s3://legit-health-plus/ai-models/acneiform/v1.0.0/weights.pt
hair_follicle_detectors3://skin-pathology-dl/models/alopecia/follicle-count/V3/yolo11l_imgsz640_roboflow/s3://legit-health-plus/ai-models/hair_follicle_detector/v1.0.0/weights.pt
hive_detectors3://skin-pathology-dl/models/urticaria-followup/AUAS/yolov8/v1/M_conf0.2_iou0.3/weights/best.pts3://legit-health-plus/ai-models/hive_detector/v1.0.0/weights.pt
inflammatory_nodular_lesion_detectors3://skin-pathology-dl/models/hidradenitis-followup/lesion-detection/V3_ultralytics_obb/1028_1331_m026_11M_DT1_preNone_bs8_imgsz512_e70_cm20/weights/best.pts3://legit-health-plus/ai-models/inflammatory_nodular_lesion_detector/v1.0.0/weights.pt
inflammatory_pattern_identificators3://skin-pathology-dl/models/hidradenitis-followup/lesion_categorization/v1/1013_1712_m002_cnvxtsmall_img384_bs32/weights/best_weights.pts3://legit-health-plus/ai-models/inflammatory_pattern_indicator/weights.pt
nail_lesion_segmenters3://skin-pathology-dl/models/nails-segmentation/nail-lesion-segmentation/202511/unet_resnet101_sz480_b16_e40_wcrops/weights.pts3://legit-health-plus/ai-models/nail_lesion_segmenter/v1.0.0/weights.pt
head_detectors3://skin-pathology-dl/models/alopecia/head-cropping/yolov8/v1/yolov8s_0108_0940_bs16_imgsz480/weights/best.pts3://legit-health-plus/ai-models/head_detector/v1.0.0/weights.pt
image_domain_modalitys3://skin-pathology-dl/models/domain_check/efficientnet_b0.ra_in1k_20251031_184215/efficientnet_b0.ra_in1k_20251031_184215.pts3://legit-health-plus/ai-models/non-clinical/image-domain-modality/v1.0.0/weights.pt
image_qualitys3://skin-pathology-dl/models/image-quality-assessment/DIQA/202511/fold2#rgb#all#mse#efficientnet_b5.sw_in12k/fold2#rgb#all#mse#efficientnet_b5.sw_in12k#unfrozen.pts3://legit-health-plus/ai-models/non-clinical/image-quality/v1.0.0/weights.pt
skin_segmenters3://skin-pathology-dl/models/skin_segmentation/v1_1/efficientnetb1_unetplusplus/weights/best_weights_bdice.pts3://legit-health-plus/ai-models/skin_segmenter/v1.0.0/weights.pt
condition_classifiers3://skin-pathology-dl/models/skin-disease-recognition/LegitHealth-DX/V27.5.1_convnextv2_base_soft_cutoff_20260116161335/V27.5.1_convnextv2_base_soft_cutoff_20260116161335.pts3://legit-health-plus/ai-models/diagnostic/skin-condition-recognizer/v27.5.1/weights.pt

SOUP Components​

For detailed SOUP information, see SOUP Directory.

Build Information​

Build Environment​

  • Build Tool: Bazel 8.4.2
  • Build Date/Time: 2026-01-23
  • Build Location: Server instance
  • Build Responsible: Gerardo Fernández Moreno

Build Script/Procedure​

  • Prep (deployment/compose.yaml): Docker must be running; copy env cp deployment/.env.example deployment/.env (edit AWS creds, version vars, limits); create JWT secret mkdir -p deployment/secrets && openssl rand -base64 32 > deployment/secrets/jwt_secret.key; GPU profile needs NVIDIA runtime.
  • Builder setup (deployment/Makefile): make preflight to check Docker; one-time make setup [ARCH=amd64|arm64] builds the Bazel-based builder image.
  • Build images for all compose services (deployment/Makefile): make images (sequential) or faster make -j4 images-parallel; use ARCH=... for cross-arch; SERVICES="svc1 svc2" if you want a subset; make status verifies images.
  • Bring everything up (deployment/Makefile): make up starts Docker Compose with default profiles cpu gpu (set PROFILES="cpu" if you want CPU-only); nginx exposes the stack on ${API_GATEWAY_HOST_PORT:-8000}.
  • Operate: make logs (or make logs PROFILES="cpu"), make logs-snapshot, make restart [SERVICES="..."] for selective restarts, make down to stop.

Build Verification​

  • ✅ Build completed successfully
  • ✅ Build artifacts generated
  • ✅ Build reproducible

Residual Anomalies​

Known Residual Anomalies​

No anomalies were identified during the system verification phase. All requirements were verified against the specified acceptance criteria.

Deployment Instructions​

Deployment Environment​

Deployed into a EC2 instance in AWS of type g6.8xlarge with the following specifications:

  • 1 GPU of type NVIDIA Tesla T4 with 24 GB VRAM
  • 32 vCPUs
  • 128 GB RAM
  • 2 TB SSD storage

Deployment Procedure​

  • Host prerequisites
    • Install Docker (and Docker Compose plugin) and ensure the daemon is running.
    • If you want GPU services, install the NVIDIA driver + nvidia-container-toolkit so docker can use GPUs; otherwise set PROFILES="cpu" later.
    • Optional but recommended: enough disk for Bazel caches (parallel builds create per-service caches).
  • Project prep
    • Clone the repo and work from deployment/.
    • Environment: cp deployment/.env.example deployment/.env and fill in AWS credentials, model weights buckets/keys, and any version pins (e.g., *_VERSION, DEFAULT_* limits).
    • JWT secret: mkdir -p deployment/secrets && openssl rand -base64 32 > deployment/secrets/jwt_secret.key.
    • Verify Docker access: cd deployment && make preflight.
  • One-time builder image
    • Builds the Dockerized Bazel builder used for all service images: cd deployment && make setup (add ARCH=amd64 or ARCH=arm64 if cross-building).
  • Build all service images
    • Default sequential: make images (respects ARCH and optional SERVICES="svc1 svc2" if you only need some).
    • Faster parallel (uses per-service Bazel caches): make -j4 images-parallel (tune -j to your cores).
    • For tarballs only (e.g., CI/push): make oci-tar or make -j oci-tar-parallel.
    • Check image readiness: make status.
  • Start the full stack
    • From deployment: make up to launch Docker Compose with both default profiles cpu gpu (so GPU services require GPU runtime).
    • CPU-only: make up PROFILES="cpu"; GPU-only: make up PROFILES="gpu".
    • nginx fronts the stack on ${API_GATEWAY_HOST_PORT:-8000}; everything else is internal.
  • Operate & verify
    • Inspect running containers: docker compose -f deployment/compose.yaml ps (or make status for build view).
    • Live logs: make logs (or make logs PROFILES="cpu"); snapshot: make logs-snapshot TAIL=200.
    • Restart services: make restart or make restart SERVICES="api-gateway control-plane" for selective restarts.
    • Stop everything: make down.
  • Troubleshooting tips
    • If builds contend on Bazel locks, prefer images-parallel.
    • To reclaim cache space: make teardown-service-caches; to remove builder/shared cache entirely: make teardown.
    • Cross-arch image build on non-native host: set ARCH consistently on setup and images*.

Run the commands from the deployment directory so the Makefile picks up deployment/compose.yaml and its helper includes.

Release Archive​

Archived Materials​

MaterialArchive LocationIdentifier
Source Code and build scriptshttps://github.com/Legit-Health/md-legit-health-plus5f8549e02f3f362db8930906cf6dfdedf232119a
AI Modelss3://legit-health-plus/ai-models/s3://legit-health-plus/ai-models/
Test Artifactss3://legit-health-plus/software-tests/v1.1.0.0/s3://legit-health-plus/software-tests/v1.1.0.0/
Release Packagehttps://plus.legit.healthhttps://plus.legit.health/v1.0

Archive Retention​

Retention Period​

In accordance with EU MDR 2017/745 and ISO 13485, all software release archives for Legit.Health Plus version 1.1.0.0 shall be retained for a period of at least 10 years after the last device of this version has been placed on the market. This ensures that technical documentation, build scripts, and verification evidence remain available for post-market surveillance and regulatory audits.

Archive Access Control​

Access to the release archive is strictly controlled to ensure the integrity of the medical device record:

  • Source Code: Maintained in the controlled GitHub repository with branch protection and MFA requirements.
  • AI Models and Test Evidence: Stored in secured S3 buckets (s3://legit-health-plus/) with restricted IAM access and logging enabled.
  • QMS Documentation: Finalized records (R-TF-029 series) are stored in the controlled QMS document repository accessible only to authorized personnel (JD-001, JD-003, JD-007, and JD-004).

Release Reproducibility​

Reproducibility Verified​

☑ Yes ☐ No

Method: Release reproducibility is achieved through a hermetic and deterministic build environment:

  • Deterministic Build Tool: The build process utilizes Bazel 8.4.2 within a dedicated Dockerized builder image (oci-builder-bazel-amd64), ensuring identical build environments across different host machines.
  • Configuration Integrity: The build relies on the verified configuration baseline defined by the .env file hash: d2eedd61aea79d70a2212307710b3e6c5d117609d6c9d7056abe7b159b7c01a5.
  • Verification Procedure: Reproducibility was verified by Gerardo Fernández Moreno on 2026-01-23 by rebuilding the software from the archived source code and confirming that the resulting artifact hashes matched the original release baseline.

Compliance and Approvals​

Regulatory Compliance​

This software release complies with:

  • ☑ EN 62304:2006/A1:2015 - Medical device software lifecycle processes
  • ☑ EN 82304-1:2016 - Health software product safety
  • ☑ ISO 13485:2016 - Quality management systems for medical devices
  • ☑ ISO 14971:2019 - Risk management for medical devices

Quality Management System Compliance​

  • ☑ All development activities performed according to GP-012
  • ☑ All required documentation completed and reviewed
  • ☑ All quality gates passed
  • ☑ Configuration management procedures followed
  • ☑ Change control procedures followed

Verification Checklist​

Verification ItemStatusReference
Software verification completed☑ CompleteR-TF-012-035
All software requirements verified☑ CompleteR-TF-012-043
All tests passed or deviations documented☑ CompleteR-TF-012-035
Residual anomalies evaluated☑ CompleteThis document, Section 5
Risk management activities completed☑ CompleteR-TF-013-002
Documentation complete and approved☑ CompleteThis document
Configuration items identified and controlled☑ CompleteThis document, Section 4

Release Decision​

Release Readiness​

Based on the verification activities and results documented:

☑ Software is READY for RELEASE All verification activities completed successfully. All acceptance criteria met.

Post-Release Activities​

Planned post-release activities:

  • Monitor for issues in production
  • Collect user feedback
  • Track and resolve defects
  • Plan for next release
  • Update documentation as needed

Signature meaning

The signatures for the approval process of this document can be found in the verified commits at the repository for the QMS. As a reference, the team members who are expected to participate in this document and their roles in the approval process, as defined in Annex I Responsibility Matrix of the GP-001, are:

  • Author: Team members involved
  • Reviewer: JD-007
  • Approver: JD-001
Previous
R-TF-012-035 — Software Test Report
Next
R-TF-012-039 Validated Version Transfer
  • Document Information
  • Release Identification
    • Software Product Information
  • Verification Completeness
    • Verification Activities Completed
    • Unit and Integration Testing
    • Verification Results Summary
  • Software Configuration
    • Software Configuration Items
    • Models
    • SOUP Components
    • Build Information
      • Build Environment
      • Build Script/Procedure
      • Build Verification
  • Residual Anomalies
    • Known Residual Anomalies
  • Deployment Instructions
    • Deployment Environment
    • Deployment Procedure
  • Release Archive
    • Archived Materials
    • Archive Retention
      • Retention Period
      • Archive Access Control
    • Release Reproducibility
      • Reproducibility Verified
  • Compliance and Approvals
    • Regulatory Compliance
    • Quality Management System Compliance
    • Verification Checklist
  • Release Decision
    • Release Readiness
    • Post-Release Activities
All the information contained in this QMS is confidential. The recipient agrees not to transmit or reproduce the information, neither by himself nor by third parties, through whichever means, without obtaining the prior written permission of Legit.Health (AI Labs Group S.L.)