Hold Protocol — Strawberries
When a strawberry lot is being held, walk the inspector through the following protocol. Render as a ChecklistCard with the four sections below; each step is gated on the previous step being checked.
1. Required photos (minimum 3)
- Top-layer overview — entire flat visible
- Close-up of any soft fruit observed
- Pulp temperature reading on the probe display
2. Required measurements
- Pulp temperature ≤ 36°F (≤ 2.2°C)
- Brix ≥ 7.0
- Bruise count per pint ≤ 2
3. Hold reason classification
Use exactly one of the following:
soft_fruit— soft to thumb pressure, no visible damagebruising— visible bruising on more than 2 fruit per pintmold— any visible mold (this is an immediate REJECT, not a hold; route to rejection flow)temp_abuse— pulp temp above spec by ≥3°Fshort_pack— actual weight below declared by more than 5%wrong_pack— packaging does not match spec
4. Notification and disposition timeline
- Notify the foreman in the current shift thread.
- If
soft_fruitorbruising: notify the lot’s assigned buyer. - If
temp_abuse: notify cold-chain lead and draft an incident report. - Initial hold window: 4h.
- Re-inspection at 2h by foreman.
- Final disposition by buyer within 8h of receive.
Tooling
Use get_lot to retrieve the lot and confirm vendor + receive time. Use query_knowledge for any vendor-specific note. On disposition, emit a lot.held event via record_event with payload { lot_id, reason, photos, measurements }. If disposition is mold, emit lot.rejected instead.
Provenance
Every photo, measurement, and event must trace to the inspector, timestamp, and lot. Do not allow the procedure to complete without all three sections checked.