dataforth(datasheet): publish DSCA33/45 gap — 1,452 new certs created, 0 overwrites

Probed each of the 1,578 unuploaded PASS serials across the 54 validated DSCA33/45
models against the Hoffman API (stale inventory -> can't trust api_uploaded_at as
"absent"). 1,452 were absent (404), 126 already live. Pushed ONLY the absent set:
created=1452 updated=0 unchanged=0 errors=0 — zero overwrites of pristine originals,
the handoff's hard requirement.

Tools: publish-dsca3345-gap.js (absent-only Created publish), validate-dsca3345.js.
Net: DSCA33/45 effort complete — 54/56 models live + validated; 2 rounding-boundary
holdouts and 2 no-original models (24 units) remain null.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-18 13:59:33 -07:00
parent abbaaf3c2f
commit ebd719e848
2 changed files with 70 additions and 0 deletions

View File

@@ -1,5 +1,34 @@
# DSCA Datasheet Fix 2 — STAGE 2 wire-in, STAGE 3 validator, publish of 68 clean models
## Update: 14:00 PT — DSCA33/45 accuracy-data reverse-engineered; 54/56 validated; 1,452 published
Picked up the 5070 Hoffman-recovery handoff and finished DSCA33/45 end-to-end. After wiring the
mined templates (gated, accHeader), reverse-engineered the accuracy-block numeric formatting against
the live Hoffman originals (validation harness = oracle):
- mA-output models store calc (and, for DSCA45, meas) in AMPS -> x1000 to display mA; DSCA33 stores
meas already in display unit (NOT scaled), DSCA45 scales both.
- DSCA33 (AC-RMS): stim/calc/meas UNSIGNED, error signed; stim = AC input, 3 dp.
- DSCA45 (frequency): stim = UNSIGNED integer Hz; calc/meas/error SIGNED.
- Math.fround on accuracy values (QB single precision). Final-Test: leading-zero drop only when the
value overflows QB's 6-char field ("-0.0005"->"-.0005", "-0.750" keeps it); spec-less section
sub-heads (Zero-Crossing Input / TTL Input) render with NO status; DSCA33 prints a "Check List"
header.
- slotmap-from-hoffman.js recovered the 13 DSCA33 models the staged multi-unit derivation couldn't
(vintage), matching the Hoffman _srcSerial original's Final-Test measured values (at display
precision) to the DB STATUS entries.
Validation (content-normalized byte-compare vs live Hoffman): **54 of 56 models PASS** and are
marked `validated:true` (render gate). 2 holdouts (DSCA33-04A, DSCA33-1891) each have ONE accuracy
cert at a rounding boundary where fround rounds opposite the original -> left UNvalidated, render
null (safe). DSCA33-1948 + DSCA45-1746 (24 units) have no Hoffman original.
Published the gap SAFELY: the stale inventory means `api_uploaded_at IS NULL` can't be trusted as
"absent from Hoffman", so probed each of the 1,578 unuploaded PASS serials with a GET; 1,452 were
absent (404), 126 already live. Pushed ONLY the 1,452 absent -> **created=1452 updated=0 unchanged=0
errors=0** (zero overwrites of pristine originals — the handoff's hard requirement). Commits
`3a7ac35d` (wiring), `b5bc0409` (accuracy + 54 validated). Tools: validate-dsca3345.js,
slotmap-from-hoffman.js, publish-dsca3345-gap.js.
## Update: 08:00 PT — diagnosed DSCA33/DSCA45 missing-specs gap (left blocked, documented)
Dug into why DSCA33-*/DSCA45-* render null. Root cause is a DATA GAP, not a code bug: their MAIN