#1579·opennhp

spec: align NHP message type registry with CSA standard

Author: justin-layervCreated Jun 12, 2026Updated Jun 12, 2026
LabelsbugcompatibilityP1

Summary

The CSA NHP standard assigns:

  • NHP-LOG = 17
  • NHP-LAK = 18
  • NHP-ARD = 19

Current OpenNHP main assigns DHP messages immediately after NHP_EXT = 16:

  • nhp/core/packet.go: NHP_DRG is type 17.
  • nhp/core/packet.go: NHP_DAK is type 18.
  • nhp/core/packet.go: NHP_DAR is type 19.
  • NHP_LOG, NHP_LAK, and NHP_ARD do not appear in the current core registry.

Why This Matters

Strict CSA-standard peers and tooling will interpret message IDs 17/18/19 differently from current OpenNHP. This is direct wire-compatibility drift and can also create ambiguity in logs, proxies, conformance tests, and future interop work.

Suggested Acceptance Criteria

  • Define the canonical OpenNHP message type registry relative to the CSA standard.
  • Reserve or implement CSA-standard NHP_LOG, NHP_LAK, and NHP_ARD, or document an explicit OpenNHP extension profile.
  • Move DHP messages to an extension range if strict standard compatibility is required.
  • Add tests that pin integer values and HeaderTypeToString output for all standard message types.
  • Include migration guidance if message IDs need to change.