Manage quality inspections, non-conformance reports, and quality holds. Use when inspecting received goods, production output, or customer returns for defects.
Run quality inspections, track non-conformances, and place quality holds on inventory.
stateset quality ... or stateset "create inspection for lot LOT-001"--apply.create_inspection, list_inspections, record_inspection_result, create_ncr, update_ncr, create_quality_hold, release_quality_hold.list_inspections — no --apply needed.create_inspection, record_inspection_result, create_ncr, update_ncr, create_quality_hold, release_quality_hold — requires --apply.stateset --db ./store.db "create inspection type=Receiving po_id=PO-100 sku=WIDGET-BLK" --apply
stateset --db ./store.db "record inspection result inspection_id=INS-001 result=Fail defect=Cosmetic" --apply
stateset --db ./store.db "create quality hold sku=WIDGET-BLK reason='Pending re-inspection'" --apply
stateset --db ./store.db "list inspections status=Fail"
Inspection: Pending -> InProgress -> Pass/Fail/ConditionalPass NCR: Open -> UnderReview -> PendingDisposition -> CorrectiveAction -> PreventiveAction -> Verification -> Closed (or Cancelled) Quality Hold: Placed -> UnderReview -> Released (or Escalated)
{"status":"inspection_completed","inspection_id":"INS-001","result":"conditional_pass","pass_rate":0.96,"ncr_created":"NCR-2025-0012"}
INSPECTION_INCOMPLETE: Cannot finalize inspection until all items have been inspected.HOLD_BLOCKING_SHIPMENT: A quality hold is preventing inventory movement; release or re-route first.NCR_DISPOSITION_INVALID: The requested disposition is not permitted for the current NCR severity level.