Skip to content

Device-true units in every readout + consent-gated full (taper) capture#78

Merged
sKuhLight merged 2 commits into
mainfrom
feature/definition-completeness
Jul 20, 2026
Merged

Device-true units in every readout + consent-gated full (taper) capture#78
sKuhLight merged 2 commits into
mainfrom
feature/definition-completeness

Conversation

@sKuhLight

Copy link
Copy Markdown
Owner

What

  • Shared withUnit/fmtValue formatters: every device-true unit token renders verbatim (dB, dB/OCT, dBu, dBV, SECONDS, SAMPLES; Hz→kHz stays the only conversion); fixes the 63 % vs 63% inconsistency between bubble and knob face.
  • Consent-gated Full capture (knob tapers) action on the definitions prompt, gated on the new fullCapture capability; mode plumbed through deviceDefs.build()forgefx.buildDeviceCache() → POST body. The read-only one-click build is byte-for-byte unchanged.
  • Re-read definitions affordance (AxisPanel) via the existing deleteDeviceCache — the firmware-update path.
  • Unknown SSE build phases (e.g. the new param-sweep) now count as progress — fixes a latent false-terminal bug in onBuildEvent.

Verification

npm run check 0 errors / 0 warnings; npm test 1111 tests green (includes new format + deviceDefs + client suites). No e2e needed — all changes are mocked-layer testable.

Notes

Server counterpart (fullCapture caps + build mode) lands via ForgeFX feature/definition-completeness; until then the new action simply never appears (caps-gated), so this PR is safe to merge independently with release:none — the features ship with the next stack pin release.

Plane: AXIS-61, AXIS-62 (Done).

…affordance

Devices advertising fullCapture get a secondary 'Full capture (knob tapers)'
action behind an explicit consent panel (writes test values into the current
preset, reloads after, nothing saved); build() plumbs mode:'full' through the
client. AxisPanel gains 'Re-read definitions' for firmware updates. Unknown
SSE build phases (e.g. param-sweep) now count as progress, fixing a latent
false-terminal bug.
@sKuhLight sKuhLight added the release:none No release on merge; changes ride the next one label Jul 20, 2026
@sKuhLight
sKuhLight enabled auto-merge July 20, 2026 14:42
@sKuhLight
sKuhLight merged commit c4a398a into main Jul 20, 2026
6 checks passed
@sKuhLight
sKuhLight deleted the feature/definition-completeness branch July 20, 2026 14:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release:none No release on merge; changes ride the next one

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant