#data-quality 4 articles
- A Choice value your field does not know is stored anyway — so a drifted vocabulary never announces itselfgotchas / listsNo 400, no error to swallow: a drifted vocabulary never shows at runtime; machine-check the type-to-schema contract
- Choice fields accept any value over REST — validation is a form-only illusiongotchas / rest-apiREST skips choice validation entirely; enforce vocabulary yourself
- Seed idempotency must key on the item, not the collectiongotchas / listsA per-SET presence check re-inserts the whole block; SharePoint cannot enforce a unique set + value pair, and two app starts at the same moment still race – after inserting, re-read and delete your own copies that are…
- webUrl + a server-relative URL doubles the site pathgotchas / rest-apiSurvives for months as a display value or grouping key and breaks the first time it becomes a filter; build object URLs from the origin in one helper