sync: auto-sync from AD2 at 2026-06-18 07:52:33

Author: Mike Swanson
Machine: AD2
Timestamp: 2026-06-18 07:52:33
This commit is contained in:
2026-06-18 07:53:30 -07:00
parent 0579d05b66
commit c180caffab

View File

@@ -1,5 +1,36 @@
# DSCA Datasheet Fix 2 — STAGE 2 wire-in, STAGE 3 validator, publish of 68 clean models
## Update: 07:52 PT — per-model slot maps resolve ambiguous DSCA layouts + re-publish of 92
Took on the ambiguous-layout families (models the count-guard skipped because raw_data carries more
or fewer value-bearing STATUS entries than the template's spec-bearing rows — the test program
measures slots the printed sheet omits, e.g. DSCA49's 5mA load pair).
New tool `derive-dsca-slotmaps.js`: derives a per-model `slotMap` (absolute statusEntries index per
spec-bearing row) by greedily matching a staged original's printed values against the DB raw_data
STATUS entries (same fround formatting), then picking the candidate map that validates against the
most units. Models are grouped by identical row-name signature and one map is derived per group from
ALL sibling units — this disambiguates duplicate values (DSCA49-04 alone has only 2 staged units,
both with 5mA==50mA linearity, so greedy picked the wrong slot; its siblings' 25 units force the
correct [0,1,2,3,6,7,8,9,11,13,15] map). Stored as `slotMap` in dsca-templates.json. Renderer
consults slotMap ONLY when the sequential zip fails, so the 88 clean models keep their path (no
regression).
STAGE 3 re-validation: FINAL-TEST CLEAN **88 -> 92**; 134 more certs render (null 450 -> 316);
matches 2278 -> 2412; same 6 retest-vintage dirty, no new mismatches. Re-pushed all 92 clean models
(41,362 serials): **updated=4024 unchanged=36109 created=0 errors=0 skipped=1229** (skips down from
2165 — ~936 previously-guarded certs now render via slotMap).
DSCA49 family + DSCA40-03 group now clean and live. Still blocked, SEPARATE gap (not layout
ambiguity): DSCA45-* and most DSCA33-* render null because they have NO spec-reader entries
(`render-datasheet.js` bails before rendering) — their slotMaps are derived and ready, they just
need spec coverage. One DSCA33 group (DSCA33-02/03/03A/04/05/1948) didn't reach the slotMap
validation threshold (best 19/35 units). Commit `e9262f57`.
Net live DSCA Final-Test: 92/126 templated models content-clean. Remaining: 6 retest-vintage,
DSCA45-*/DSCA33-* missing specs, 1 DSCA33 group below threshold, ~32 models with no DB-matched
staged unit, and 231 untemplated models (STAGE 1 extension).
## Update: 07:33 PT — data-driven DSCA load note (DSCA39 footer-artifact fix) + re-publish of 88
Fixed the DSCA39 footer-note artifact properly at the STAGE 1 extractor level. The "Standard