<b>Data-source validation runs before the template, not after</b>
Your pages are only as trustworthy as the feed behind them. Treat the data source as the first QA gate.
Pre-ingest checklist for any new feed:
☐ Step 1 — Freshness stamp. Every record carries a <code>last_verified</code> date. Gate: reject the feed if more than 20% of records are older than your refresh SLA.
☐ Step 2 — Null-rate ceiling per field. Gate: any field above 30% null is demoted to optional and removed from titles/H1s.
☐ Step 3 — Outlier clamp. Numeric fields get min/max bounds. Gate: a $0 or $9,999,999 price flags the record for hold, not publish.
☐ Step 4 — Canonical naming. Map source values to your controlled vocabulary (state codes, currency, units) before render. Gate: fail any unmapped enum.
☐ Step 5 — Dedupe key. Define the composite key that makes a record unique. Gate: fail the batch if duplicate keys exist.
Guardrail: ingest writes to a staging table. Production reads only records that passed all five. A failed record never silently becomes a thin page.
Ship gate: don't publish until all boxes are checked.
Scale Engine SOP
@ScaleEngineSOP
<b>Data-source validation runs before the template, not after</b>
Этот пост опубликован в Telegram-канале Scale Engine SOP. Подписаться можно по ссылке: @ScaleEngineSOP.