drogna

A demonstration harness. Every number in it is invented.

V1 record — describes retired software; superseded for V2 by srd.md, constitution 2.0.0 and ADR-0027.

ADR-0005: Sound speed is derived at the point of use, not stored

Status: Accepted Date: 26 August 2026 Requirements: SRD FR-02, FR-16, FR-24, FR-37; SRD §2.2 Raised by: feature 007's specification, where the SRD does not assign the derivation

Context

FR-24 has the monitor compute the residual between measured and forecast sound speed, and the SRD is emphatic that it is sound speed and not temperature. FR-02 has the environment generator produce temperature, salinity and pressure, "from which sound speed is derived". SRD §2.2 lists sound speed computation among the genuinely bespoke logic inside the boundary.

What the SRD does not say is where the derivation happens. Feature 007's specification surfaced the gap: if the simulated sensors publish sound speed as a fourth datastream and the ingest client stores it, then the monitor reads it; if they publish only the three measured quantities, the monitor derives it. Two specifications were about to make opposite assumptions.

Decision

Simulated sensors publish temperature, salinity and pressure only, as three SensorThings Datastreams. Sound speed is never published, never stored, and is not a datastream.

Sound speed is derived at the point of use, by a single shared implementation in libs/harness_core, called by the monitor (FR-24) and by telemetry (FR-37).

Consequences