Inquiry Intake
Purpose
Structured inquiry + deterministic intent (#1.1). DNR outranks generic WISMO when both match - the contradiction path is safety-relevant.
When to use
Start of every service run.
Inputs
Inquiry text verbatim (chat/email/voice transcript), channel, customer id, order reference; the records extract that ships with the case (records.json - OMS order, carrier scans, loyalty); config/service-config.json. Emits the entry hop (schema in contracts/).
Steps
- Capture text verbatim; record channel/tone; note explicit asks (refund now, goodwill credit) as flags.
- Run scripts/intent_classify.py --inquiry inquiry.json --config service-config.json --out classified.json
- Below the confidence floor -> the run is a handoff, never a guessed answer (#1.1).
- Intake is a hop, not a stopping point. Continue to context-assemble in the same run; do not pause to ask for records that ship with the case (records.json).
Output
classified.json - the {intent} hop. Hand straight to context-assemble.
Grounding requirements
Intent cites the taxonomy; the customer's words stay verbatim.
Constraints
- No resolution content here; no promises of any kind at intake.
Escalation / uncertainty
Unclassified or ambiguous -> handoff packet path.


