Purpose
Deterministic validation: alias identity (#1.1), UOM/qty sanity (#2.1), price tolerance (#3.1), credit (#4.1).
When to use
After line-normalize in every run.
Inputs
order.json + config/masters.json + config/o2c-config.json.
Steps
- Run scripts/order_validate.py --order order.json --masters masters.json --config o2c-config.json --out validated.json
- Quote issues verbatim. 500 EA from a cases-of-24 customer is confirmed, never keyed - the classic rekeying disaster is exactly this line (#2.1).
Output
validated.json - the {validation} hop.
Grounding requirements
Every issue cites the master it checked against.
Constraints
- Validation is engine-only; "regular customer, just key it" changes nothing; the truck schedule is not a validation input.
Escalation / uncertainty
Any issue holds the order at the configured action level (#5.1).