# Methodology

The source workflow extracted 31,946 raw price observations from 1,861 unique archive captures across 152 vendor/model/component series. It applied a one-value-per-timestamp scope gate: 25,046 observations across 134 series were eligible, while 6,900 observations across 18 scope-ambiguous series were held.

The distributed normalized dataset contains 157 price states. Machine-detected transitions are candidates for a stricter editorial identity, release, and date-bracket review; they are not automatically verified vendor price-change claims.

## Variables and units

Each row identifies a series, vendor, model, component, revision, observation timestamp, amount, currency, unit, official source URL, archived capture URL, content hash, and value-state hashes.

## Exclusions and uncertainty

The public normalized boundary excludes scope-conflicted series. Archive availability, capture timing, page rendering, silent vendor edits, ambiguous plan tiers, currency treatment, and missing historical pages can affect interpretation. No causal explanation is inferred from an observed transition.
