Skip to content

Release Notes

0.1.0 [2026-09-01]

Enhancements:

  • Added NSCLC lung lesion malignancy classification gear using the FMCIB fine-tuned Task-2 model (fmcib-finetuned-task2), reporting per-lesion prob_malignant scores as CSV and JSON outputs.
  • Added ct-dicom and lesion-rtstruct DICOM inputs with strict header-based modality validation; Flywheel file metadata is treated as a hint only.
  • Added malignancy_threshold config option (default 0.5) controlling the predicted_label column without affecting raw probabilities.
  • Added roi_pattern config option (default (?i)(nodule|lesion|gtv|tumou?r)) for regex-based ROI selection from the RT Structure Set.
  • Added min_lesion_volume_mm3 config option (default 5) to drop small connected components as segmentation noise.
  • Added cross-check of the RTSTRUCT's referenced SeriesInstanceUID against the loaded CT series, failing loudly on mismatched input pairs.
  • Added graceful no-lesions handling: gear exits 0 and writes a single status=no_lesions row when no ROI matches or every component is filtered.

Maintenance:

  • Added Dockerfile based on pytorch/pytorch:2.8.0-cuda12.6-cudnn9-runtime with uv-managed virtual environment and baked-in FMCIB checkpoint (~741MB, pinned to an immutable HuggingFace revision with SHA-256 checksum).
  • Added pyproject.toml using hatchling build backend with python >=3.11, <3.13 and dependencies including monai==1.6.0, simpleitk>=2.4, pydicom>=2.4, fw-gear>=0.3.0, and numpy==2.3.2.
  • Added foundation-cancer-image-biomarker==0.0.1a20 installed with --no-deps to avoid its torch 2.0 pin clobbering the base image's CUDA build.
  • Added .gitlab-ci.yml with a large-runner override and 3h timeout to accommodate the CUDA image build and checkpoint size.
  • Added pre-commit hooks including ruff, hadolint, pytest, and pyproject_export.
  • Added test suite covering annotations, loader, main, output, parser, and run modules.

Documentation:

  • Added README.md with full gear overview, inputs, config, outputs, workflow diagram, use cases, logging notes, and FAQ.
  • Added CONTRIBUTING.md documenting uv-based dependency management, pre-commit usage, and branch/MR conventions.

0.1.0-rc.1 [2026-08-19]

Initial development release (pre-release).

Enhancements:

  • Repo scaffold from the official gear skeleton template: thin run.py -> parser.parse_config() -> main.run() layout, package fw_gear_nsclc_malignancy_classifier, skeleton CI and pre-commit config (GEAR-23684).
  • Manifest with ct-dicom (DICOM zip) and lesion-annotations (CSV) file inputs and debug / malignancy_threshold / coordinate_frame / tag config options (GEAR-23684).
  • Dockerfile with the FMCIB inference stack (torch 2.8.0+cu126, torchvision 0.23.0, monai 1.6.0, foundation-cancer-image-biomarker installed --no-deps) and the fine-tuned Task-2 checkpoint (~741MB, CC-BY-4.0) baked into the image at a pinned HuggingFace revision with sha256 verification - no network egress at runtime (GEAR-23685).