feat(gate-b): add product-state fixture harness for TV-3/6/7/10

Real-fixture path and harness for product-state evidence on TV-3 bdft identity,
TV-6 crop/PNG rules, TV-7 undersized warn/retake, and TV-10 rounding.

- fixtures/real/: acquisition README, placeholder metadata JSON templates
- fixtures/real-fixtures.ts: loader that decodes real PNGs, generates masks,
  runs the pipeline, fails-closed when absent or unmarked
- tv3-real.test.ts / tv6-real.test.ts / tv7-real.test.ts / tv10-real.test.ts:
  product-state tests that skip when real fixtures are absent
- Updated RESULTS.md with real-fixture harness note
- Added pngjs devDependency for PNG decoding in Node.js

Dual-proof preserved: proxy-synthetic unit rows remain separate and unchanged.
Gate B is not green; product-state rows are blocked pending Ty-supplied photos.
This commit is contained in:
2026-09-07 18:23:04 +00:00
parent d5d5cded62
commit fb892e4a32
13 changed files with 668 additions and 6 deletions
@@ -0,0 +1,9 @@
{
"source": "placeholder-template",
"real": false,
"lengthIn": 96,
"thicknessIn": 1.5,
"sqft": 0.64,
"expectedBdft": 0.96,
"photoNotes": "PLACEHOLDER: replace with real Ty measurements and set real: true"
}