# ATGBICS Parser Truth Hardening - 2026-05-09

## Context

ATGBICS still has the largest near-complete detail backlog. The parser must be strict because broad Shopify refreshes can otherwise promote rows based on inferred defaults rather than evidence.

## Root Cause

- Unknown fiber type defaulted to `SMF`
- Variable cable/range text could be interpreted as a fixed reach
- Automatic detail verification should require positive source or protocol evidence

## Code Hardened

- `packages/scraper/src/scrapers/atgbics.ts`
  - refuses variable reach ranges such as `1 - 30 m`
  - only returns `SMF` from explicit SMF/single-mode or protocol evidence such as LR/ER/ZR/BiDi/CWDM/DWDM/DR/FR/PSM
  - returns empty fiber type when evidence is missing instead of assuming SMF

## Verification

- `npm run build -w packages/scraper` passed locally

## Deployment

- Source file synced to `/opt/tip`
- `pnpm -C packages/scraper build` passed on Erik after SSH recovered

## Truth Policy

Future ATGBICS runs should not promote rows to detail-verified from default fiber assumptions. Remaining ATGBICS rows need targeted optical/coherent parsing or source-specific evidence.
