# QSFPTEK Cable AOC Parser And Backfill

Date: 2026-05-09
Actor: Codex
Scope: QSFPTEK remaining detail gaps
Mode: DB-only correction plus scraper parser hardening

## Root Cause

QSFPTEK still had detail gaps because:

- the scraper did not pass `productUrl` to `findOrCreateScrapedTransceiver`
- generic leading lengths like `1m`, `2m`, `10m`, `15m`, `30m` were not parsed
- MFS/MCP cable families were not classified as AOC/DAC cable products

## Code Change

Patched `packages/scraper/src/scrapers/qsfptek.ts`:

- parse generic meter/kilometer reach
- classify `MFS`/AOC/active fiber as `AOC Cable`
- classify `MCP`/DAC/Copper/Twinax as `Cable`
- write `productUrl` in the DB upsert
- set Copper/DAC wavelength to `N/A`
- add safe optical family wavelength parsing for future catalog runs

Synced to active `/opt/tip`; `pnpm -C packages/scraper build` passed.

## DB Backfill

- QSFPTEK rows missing details: `36`
- deterministic cable/AOC rows with source URL and leading length: `28`
- rows updated: `28`
- additional rows promoted to `fully_verified`: `8`

## Training Note

TIPLLM should treat QSFPTEK `MFS...` rows as AOC/active fiber cable candidates and `MCP...` rows as DAC/Copper cable candidates, but only mark details verified when source URL and deterministic length are present.
