sync: auto-sync from AD2 at 2026-06-18 14:07:45

Author: Mike Swanson
Machine: AD2
Timestamp: 2026-06-18 14:07:45
This commit is contained in:
2026-06-18 14:08:42 -07:00
parent ebd719e848
commit 9c4181aea5

View File

@@ -17,11 +17,28 @@ Mined **56 of 58 models** straight from Hoffman into `projects/dataforth-dos/dsc
Coverage: ~7,157 units already correct + live on Hoffman (no action); ~1,580 not-yet-uploaded units
need rendering from the mined templates + AD2's already-derived slotMaps.
AD2 handoff + the critical gate: `projects/dataforth-dos/DSCA33-45-HOFFMAN-RECOVERY-2026-06-18.md`.
**Critical:** validate each model's render byte-for-byte against its Hoffman original BEFORE enabling
live DSCA33/45 rendering — once the renderer returns non-null, the pipeline stops skipping these and
will re-push/UPDATE the 7,157 good originals on the next cycle (safe only if the render matches).
**STATUS — DONE on AD2 (2026-06-18, commits up to `4615877f` on `ad2`):** the AD2 session wired the
mined templates into the renderer, reverse-engineered the DSCA33/45 accuracy-block formatting, and
published the gap. **54 of 56 models validated byte-for-byte vs the live Hoffman originals** and
marked `validated:true` in `dsca33-45-templates.json` (the per-model render gate — a model renders
only when validated). **1,452 truly-new certs published to Hoffman (created=1452, updated=0,
errors=0)** — published absent-only (probed each serial with a GET; the stale inventory means
`api_uploaded_at IS NULL` does NOT mean "absent from Hoffman", so never trust it for this) so ZERO
originals were overwritten. Still null/unpublished: **DSCA33-04A** + **DSCA33-1891** (each one accuracy
cert at a rounding boundary where `Math.fround` rounds opposite the original — left UNvalidated), and
the 2 no-original models **DSCA33-1948 / DSCA45-1746** (24 units). The 126 already-live gap units were
left untouched.
Hoffman read API: `GET https://www.dataforth.com/api/v1/TestReportDataFiles/{serial}` (returns
`{SerialNumber,Content,CreatedAtUtc,UpdatedAtUtc}`); creds vault `clients/dataforth/hoffman-product-api`.
Miner: `projects/dataforth-dos/tools/mine-hoffman-dsca.py`. AD2 access notes: [[ad2-ssh-mtu-blackhole]].
Render specifics now in `templates/datasheet-exact.js`: DSCA3345_TEMPLATES takes precedence over the
stale staged-extraction entries; `formatAccuracyLineDSCA3345` (mADC calc stored in A -> x1000; DSCA33
meas unscaled, DSCA45 meas scaled; DSCA33 unsigned stim/calc/meas, DSCA45 signed + integer-Hz stim;
fround); leading-zero drop only when the value overflows the 6-char field; DSCA33 "Check List" header;
section sub-heads (Zero-Crossing/TTL) get no status. Tools: `validate-dsca3345.js` (oracle gate),
`slotmap-from-hoffman.js`, `publish-dsca3345-gap.js`.
Handoff doc (historical): `projects/dataforth-dos/DSCA33-45-HOFFMAN-RECOVERY-2026-06-18.md`. Hoffman
read API: `GET https://www.dataforth.com/api/v1/TestReportDataFiles/{serial}`; creds vault
`clients/dataforth/hoffman-product-api` (on AD2 the deployed uploader token at
`C:\ProgramData\dataforth-uploader\credentials.json` works for reads too — no vault needed). Miner:
`projects/dataforth-dos/tools/mine-hoffman-dsca.py`. AD2 access notes: [[ad2-ssh-mtu-blackhole]],
[[ad2-comms-via-sync-only]].