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

instrument implementation / implementation-contract

Metronome Panel implementation

A source-bound implementation contract for Metronome Panel; deployment and executable qualification remain separate.

Status: VERIFIED_CLEANLifecycle: implementation-contract

Binding contract

This record describes what an executable surface must bind and validate. It does not claim that a public calculator, package, or production route is deployed.

Record owner
Guth Instruments
Lifecycle
verified-clean
Evidence ID
t6-033
Effect
Computation or source lookup only

Input and validation requirements

BPM = 0 produces an undefined click interval unless the input is explicitly rejected. A separate convention ambiguity can also produce 250 ms versus 1000 ms for the same displayed settings if subdivision is interpreted per beat versus per bar.

Required corrections

No binding erratum is attached to this unique-name record. Implementers must still preserve the declared units, domain, and failure behavior.

Inspectable interface fixture

The sample below is evidence for interface and validation tests, not a production implementation.

{
  "inputs": {
    "BPM": 120,
    "time_signature": "4/4",
    "subdivision": 1,
    "accent_pattern": [
      1,
      0,
      0,
      0
    ],
    "accent_pattern_scope": "one bar, one entry per click",
    "bar_count": 1
  },
  "expected_outputs": {
    "click_interval_ms": 500,
    "click_times_ms": [
      0,
      500,
      1000,
      1500
    ],
    "accented_click_indices": [
      0
    ]
  },
  "working": "BPM = 120 beats/minute. One subdivision gives 1 click/beat. Interval = 60000 / 120 / 1 = 500 ms. A 4/4 bar has 4 beats, so click times are 0, 0+500 = 500, 500+500 = 1000, and 1000+500 = 1500 ms. The accent pattern [1,0,0,0] accents only index 0."
}

Other records

Sources and evidence

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

  • VERIFIED_LEDGER.json
  • evidence-tranche6/tranche6-results.json