Guth
NewsDocs
Page actions
View as Markdown ↗
Explore MCP tools ↗

instrument / verified-clean

DMS ↔ Decimal Degrees

The current ledger marks this instrument verified clean within the source-bound verification corpus.

Status: VERIFIED_CLEANLifecycle: verified-clean

Inspectable records

Ledger state

The current ledger marks this instrument verified clean within the source-bound verification corpus.

Area
Earth & Space (astronomy, orbital mechanics, meteorology, geology, geodesy, oceanography)
Tranche
tranche-4
Evidence ID
t4-149
Ledger rows
1

No ledger note is attached.

Review findings

The specification is ambiguous because it claims bidirectional conversion but supplies only a forward formula, and it does not define negative-coordinate conventions, accepted DMS syntax, normalization, or rounding. The blank honest_label should explicitly state that this is an angular-format converter, not a datum transformation, coordinate-reference-system conversion, or geodetic position calculation.

Formula and scope findings

  • The supplied formula only converts DMS to decimal degrees; no decimal-degrees-to-DMS formula is provided, despite the instrument claiming bidirectional conversion.
  • For negative coordinates, `dd = d + m/60 + s/3600` is ambiguous and is incorrect if only the degrees component carries the negative sign. The standard signed interpretation is `dd = sign(d) * (abs(d) + m/60 + s/3600)` when minutes and seconds are nonnegative.
  • DMS parsing syntax is unspecified: degree, minute, and second separators; whitespace; hemisphere suffixes; and whether signed minutes or seconds are accepted are all ambiguous.
  • Valid-component constraints are missing. Standard normalized DMS requires 0 <= minutes < 60 and 0 <= seconds < 60, with degree sign or hemisphere carrying the sign.
  • Decimal-to-DMS rounding, precision, and carry behavior are unspecified, including cases where rounded seconds become 60 or minutes become 60.

Unit assumptions

  • Degrees, minutes, and seconds are angular subdivisions: 1 degree = 60 minutes and 1 minute = 60 seconds.
  • `m/60` and `s/3600` are degree quantities, so the output decimal value is in degrees.
  • The test DMS values use nonnegative minutes and seconds; a negative coordinate applies its sign to the complete angular magnitude.
  • Decimal-degree inputs are numeric angular values in degrees, not radians.
  • The reverse conversion test assumes normalized output formatted as signed degrees-minutes-seconds with seconds allowed to contain a decimal fraction.

Boundary hardening

BREAK_CLAIMED · SELF_FLAGGED

The extreme-magnitude vector exposes loss of the one-second fractional component when JavaScript Number arithmetic adds 1/3600 to 100000000000000000000. The negative-DMS vector also exposes an output-changing convention ambiguity unless the sign convention is explicitly defined.

Errata and corrections

No applied erratum is attached to this unique-name record.

Inspectable example

4 review vectors are recorded. One source-bound sample is shown below.

{
  "inputs": {
    "dms": "40°26′46″"
  },
  "expected_outputs": {
    "decimal_degrees": 40.44611111111111
  },
  "working": "40 + 26/60 + 46/3600 = 40 + 0.4333333333333333 + 0.0127777777777778 = 40.44611111111111°"
}

Related workflows

No source-defined multi-instrument workflow membership is recorded.

Sources and evidence

These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.

  • VERIFIED_LEDGER.json · VERIFIED_CLEAN
  • evidence-tranche4/tranche4-results.json
  • BOUNDARY_HAZARD_CATALOG.json