Skip to content

v0.4.0 – Message Analysis

Choose a tag to compare

@github-actions github-actions released this 08 Mar 21:17
· 54 commits to refs/heads/main since this release

v0.4.0 – Message Analysis

Completes Milestone 3. HL7 Forge now understands the content of your messages — not just the structure.


🔍 What's New

HL7 Field Dictionary

Hover over any field in the detail view to see its official HL7 v2.5.1 name and description (e.g. "PID-5: Patient Name"). The full dictionary is compiled into the binary — zero external dependencies, zero latency. (#48)

Message Type Detection & Typical Segments

The detail header now shows a human-readable type description (e.g. "Admit / Visit Notification") and a colour-coded Typical Segments bar showing at a glance which expected segments are present, absent, or missing. (#45, #50)

Validation Engine

A rule-based validator checks required MSH fields and message-type-specific segments for ADT, ORU, ORM, OML, SIU, and MDM messages.

Violations are surfaced as severity-coded badges:

  • 🟡 Amber — required field missing
  • 🔴 Red — required segment missing
  • 🔵 Blue — invalid data type (NM/DT/TS/SI)

A header button cycles the message list through All → Warnings Only → Errors Only, and the search bar accepts has:warnings / has:errors prefixes. (#46, #51, #60, #62)

Segment Diff

Pin any message as a reference with the ◎ button, then open the Diff tab on another message for a field-level side-by-side comparison with red/green highlighting. A toggle hides dynamic fields (MSH-7, MSH-10) to focus on meaningful differences. (#47, #52, #61)

Quick Copy to Clipboard

Three copy targets, no extra clicks:

  • Hover a segment header → 📋 icon copies the raw segment line
  • Click any field value cell → copies value with a green flash
  • Raw tab → 📋 Copy All button copies the full message text

(#63)


🐛 Bug Fixes

  • Consistent YYYY-MM-DD HH:mm:ss date display in message list (#55)
  • No layout shift when selecting a message row (#56)
  • Removed duplicate .theme-toggle CSS block (#57)
  • Added missing .msg-ack styling (#58)
  • Pin button now highlights in blue, not yellow (#59)
  • Diff table columns no longer stretch unevenly (#67)
  • INVALID_DATATYPE warnings no longer incorrectly turn segment badges amber

Full Changelog: v0.3.0...v0.4.0