Files
claudetools/.claude/memory/project_8b5b_sign_keep.md
Mike Swanson 1f0ffdbf9b sync: auto-sync from AD2 at 2026-06-18 18:44:28
Author: Mike Swanson
Machine: AD2
Timestamp: 2026-06-18 18:44:28
2026-06-18 18:47:04 -07:00

41 lines
2.7 KiB
Markdown

---
name: project_8b5b_sign_keep
description: 8B/5B Final-Test measured values KEEP the sign; prior "drop sign" diagnosis was from contaminated oracles
metadata:
type: project
---
Dataforth 8B/SCM5B datasheet Final-Test measured values **KEEP the sign** on negatives
(e.g. `-346 uV/%`, `-0.172 %`, `-12.3 uA`). Verified 2026-06-18 against PRISTINE Hoffman
originals (api_uploaded_at NULL — never touched by us) across all eras: 8B33-01 (2026),
8BP01-24 (2025), SCM5B41-06D (1990), 5B39 variants (2010).
So the mined-template path (`formatMeasuredExact`, keep-sign) is CORRECT. The 69 validated
mined models are right. The legacy `formatMeasured` path in `templates/datasheet-exact.js`
has a sign-DROPPING bug: `valueStr = statusStr.substring(5,...)` skips the sign char at
index 4 — it should be `substring(4)`. That bug mis-renders every negative Final-Test value
for non-mined 8B/5B models (the bulk of legacy-path production).
**Why the prior session mis-diagnosed "8B/5B drops the sign":** ALL 112 mined-template
`_srcSerial` validation oracles are OUR OWN prior uploads (zero pristine), many produced by
the buggy legacy drop-sign renderer. The validator (`validate-mined.js`) was comparing the
renderer against our own contaminated output — circular. The "sign FAIL" cases (e.g.
8B34-01 render `-0.2` vs oracle `0.2`) are the renderer being CORRECT and the oracle wrong.
**Status (2026-06-18, applied — UNCOMMITTED in repo working tree, live at C:\Shares\testdatadb):**
Fixed `datasheet-exact.js`: (1) legacy `formatMeasured` keep-sign (substring 5->4);
(2) per-model `checkListTitle` capture in 8b5bscm-templates.json (23 "Packing Check List" /
89 "Check List") + renderer emits it; (3) 5B/8B template path uses new `formatMeasured5B8BTpl`
= keep-sign + QB decimal CODES (code 2 -> 1dp, not literal). Repointed 9 oracles to pristine;
10 models pristine-confirmed. Smart-classified 112 models -> 93 publishable (42 clean + 51
sign/decimal false-fail where renderer is right and the contaminated oracle is wrong);
19 genuine gaps held back (12 render-null/slotMap, 6 CJC blank, 1 "Output Switch" status,
2 accuracy-ULP). Published absent-only gap fill: **created=2467 updated=0 (zero overwrites)
errors=3 skipped=85**.
**Still open:** (a) REPUBLISH the ~14% of already-published 5B/8B certs that have dropped
signs (sampled assessment: 34/238 live certs dropped a sign) — overwrites our own wrong
certs, needs explicit go. (b) 19 genuine gaps. (c) commit/sync (held by Mike). Tools live in
C:\Shares\testdatadb: `_smart_validate.js`, `_revalidate_pristine.js`, `_capture_checklist.js`,
`_assess_signdamage.js`, `_publish_8b5b_gap.js`. See [[project_pipeline_rebuilt]] [[feedback_sn_from_data]].