Open-source framework turns clinical time series into traceable natural-language narratives Bioengineer.org