Real-world Examples (Debug Trace)
Canonical Runtime Step Set
1LoadOrCreateConversationStep
2ResetConversationStep
3PersistConversationBootstrapStep
4AuditUserInputStep
5PolicyEnforcementStep
6IntentResolutionStep
7ResetResolvedIntentStep
8FallbackIntentStateStep
9AddContainerDataStep
10McpToolStep
11SchemaExtractionStep
12AutoAdvanceStep
13RulesStep
14ResponseResolutionStep
15PersistConversationStep
16PipelineEndGuardStep
These examples zoom into relevant branches; conditional/system steps from the canonical set are omitted in each graph unless they materially affect that scenario.
Each example has three tabs:
Conversation: chat + execution flowDML Entries: starter rows force_intent,ce_prompt_template,ce_output_schema,ce_responseAudit Trail: stage-by-stagece_auditview
Example 1: FAQ
- Conversation
- DML Entries
- Audit Trail
FAQ
FAQ flow
Classifier-first deterministic path
FAQ scenario DML
SQL
insert into ce_intent(intent_code, enabled) values ('FAQ', true);
insert into ce_prompt_template(intent_code, state_code, response_type, system_prompt, user_prompt, enabled)
values ('FAQ', null, 'TEXT', 'You are a support assistant.', 'Answer FAQ clearly in one paragraph from user text: {{user_input}}', true);
insert into ce_output_schema(intent_code, state_code, schema_json, enabled)
values ('FAQ', null, '{"type":"object","properties":{"question":{"type":"string"}}}', true);
insert into ce_response(intent_code, state_code, response_type, output_format, exact_text, enabled)
values ('FAQ', 'IDLE', 'EXACT', 'TEXT', 'Yes, you can request relocation from the support portal.', true);
FAQ config rows preview
| Table | Key values |
|---|---|
| ce_intent | intent_code=FAQ |
| ce_prompt_template | intent_code=FAQ, state_code=null, response_type=TEXT |
| ce_output_schema | intent_code=FAQ |
| ce_response | response_type=EXACT, output_format=TEXT |
FAQ ce_audit trail
| Stage | What happened |
|---|---|
| USER_INPUT | Incoming user message stored |
| STEP_ENTER (IntentResolutionStep) | Intent step starts |
| INTENT_RESOLVED | Classifier matched FAQ |
| RULE_NO_MATCH | No rule action |
| ASSISTANT_OUTPUT | Exact FAQ response selected |
| STEP_EXIT (PersistConversationStep) | Conversation persisted |
FAQ audit payload sample
JSON
{
"_meta": {
"stage": "ASSISTANT_OUTPUT",
"conversationId": "conv-faq-001",
"intent": "FAQ",
"state": "IDLE"
},
"responseType": "EXACT",
"outputFormat": "TEXT"
}
Example 2: DISCONNECT_ELECTRICITY
- Conversation
- DML Entries
- Audit Trail
DISCONNECT_ELECTRICITY
Disconnect flow
Multi-turn schema completion and intent lock/unlock
DISCONNECT_ELECTRICITY scenario DML
SQL
insert into ce_intent(intent_code, enabled) values ('DISCONNECT_ELECTRICITY', true);
insert into ce_prompt_template(intent_code, state_code, response_type, system_prompt, user_prompt, enabled)
values ('DISCONNECT_ELECTRICITY', 'COLLECT_REQUIRED', 'TEXT', 'Collect missing disconnect fields.', 'If required fields are missing, ask only for missing values. User: {{user_input}}', true);
insert into ce_output_schema(intent_code, state_code, schema_json, enabled)
values ('DISCONNECT_ELECTRICITY', 'COLLECT_REQUIRED',
'{"type":"object","properties":{"accountId":{"type":"string"},"disconnectDate":{"type":"string"},"reason":{"type":"string"}},"required":["accountId","disconnectDate","reason"]}',
true);
insert into ce_response(intent_code, state_code, response_type, output_format, exact_text, enabled)
values ('DISCONNECT_ELECTRICITY', 'COLLECT_REQUIRED', 'DERIVED', 'TEXT', null, true);
DISCONNECT_ELECTRICITY config rows preview
| Table | Key values |
|---|---|
| ce_intent | intent_code=DISCONNECT_ELECTRICITY |
| ce_prompt_template | intent_code=DISCONNECT_ELECTRICITY, state_code=COLLECT_REQUIRED |
| ce_output_schema | required=accountId,disconnectDate,reason |
| ce_response | response_type=DERIVED |
DISCONNECT_ELECTRICITY ce_audit trail
| Stage | What happened |
|---|---|
| INTENT_RESOLVED | Intent set to DISCONNECT_ELECTRICITY |
| SCHEMA_EVALUATED | accountId extracted, fields missing |
| SCHEMA_INCOMPLETE | Intent lock enabled |
| ASSISTANT_OUTPUT | Follow-up question asked |
| SCHEMA_COMPLETE | All required fields merged |
| RULE_MATCH | SET_STATE/SET_TASK applied |
| ASSISTANT_OUTPUT | Final confirmation response |
Schema incomplete audit payload sample
JSON
{
"_meta": {
"stage": "SCHEMA_INCOMPLETE",
"conversationId": "conv-disconnect-001",
"intent": "DISCONNECT_ELECTRICITY"
},
"missingFields": [
"disconnectDate",
"reason"
],
"locked": true
}
Example 3: LOG_ANALYSIS
- Conversation
- DML Entries
- Audit Trail
LOG_ANALYSIS
Log analysis flow
Schema extraction + GET_SCHEMA_JSON rule + derived response
LOG_ANALYSIS scenario DML
SQL
insert into ce_intent(intent_code, enabled) values ('LOG_ANALYSIS', true);
insert into ce_prompt_template(intent_code, state_code, response_type, system_prompt, user_prompt, enabled)
values ('LOG_ANALYSIS', 'ANALYZE', 'TEXT', 'Generate root-cause analysis from extracted fields.', 'Use extracted severity/component/errorCode and explain cause + fix in bullets.', true);
insert into ce_output_schema(intent_code, state_code, schema_json, enabled)
values ('LOG_ANALYSIS', 'ANALYZE',
'{"type":"object","properties":{"errorCode":{"type":"string"},"component":{"type":"string"},"severity":{"type":"string"}}}',
true);
insert into ce_response(intent_code, state_code, response_type, output_format, exact_text, enabled)
values ('LOG_ANALYSIS', 'ANALYZE', 'DERIVED', 'TEXT', null, true);
LOG_ANALYSIS config rows preview
| Table | Key values |
|---|---|
| ce_intent | intent_code=LOG_ANALYSIS |
| ce_prompt_template | intent_code=LOG_ANALYSIS, state_code=ANALYZE |
| ce_output_schema | properties=errorCode,component,severity |
| ce_response | response_type=DERIVED |
LOG_ANALYSIS ce_audit trail
| Stage | What happened |
|---|---|
| INTENT_RESOLVED | Intent set to LOG_ANALYSIS |
| SCHEMA_EVALUATED | errorCode/component/severity extracted |
| RULE_MATCH | GET_SCHEMA_JSON branch triggered |
| ASSISTANT_OUTPUT | Derived explanation generated |
| CONVERSATION_PERSIST | Final payload persisted |
Example 4: REQUEST_TRACKER
- Conversation
- DML Entries
- Audit Trail
REQUEST_TRACKER
Tracker flow
SET_TASK driven consumer integration path
REQUEST_TRACKER scenario DML
SQL
insert into ce_intent(intent_code, enabled) values ('REQUEST_TRACKER', true);
insert into ce_prompt_template(intent_code, state_code, response_type, system_prompt, user_prompt, enabled)
values ('REQUEST_TRACKER', 'LOOKUP', 'TEXT', 'Render request tracker status from context.', 'Respond with requestId, status and lastUpdated.', true);
insert into ce_output_schema(intent_code, state_code, schema_json, enabled)
values ('REQUEST_TRACKER', 'LOOKUP', '{"type":"object","properties":{"requestId":{"type":"string"}}}', true);
insert into ce_response(intent_code, state_code, response_type, output_format, exact_text, enabled)
values ('REQUEST_TRACKER', 'LOOKUP', 'DERIVED', 'TEXT', null, true);
REQUEST_TRACKER config rows preview
| Table | Key values |
|---|---|
| ce_intent | intent_code=REQUEST_TRACKER |
| ce_prompt_template | intent_code=REQUEST_TRACKER, state_code=LOOKUP |
| ce_output_schema | property=requestId |
| ce_response | response_type=DERIVED |
REQUEST_TRACKER ce_audit trail
| Stage | What happened |
|---|---|
| INTENT_RESOLVED | Intent set to REQUEST_TRACKER |
| RULE_MATCH | SET_TASK=TRACK_REQUEST_STATUS |
| TASK_EXECUTION | Consumer service injected context |
| ASSISTANT_OUTPUT | Tracker response built |
| CONVERSATION_PERSIST | Payload and state persisted |
Example 5: RESET_SESSION
- Conversation
- DML Entries
- Audit Trail
RESET_SESSION
Reset flow
Config-driven reset command through ResetConversationStep
RESET_SESSION scenario DML
SQL
insert into ce_intent(intent_code, enabled) values ('RESET_SESSION', true);
insert into ce_prompt_template(intent_code, state_code, response_type, system_prompt, user_prompt, enabled)
values ('RESET_SESSION', 'IDLE', 'TEXT', 'Confirm reset and ask next request.', 'User issued reset. Confirm reset and ask how to help next.', true);
insert into ce_output_schema(intent_code, state_code, schema_json, enabled)
values ('RESET_SESSION', 'IDLE', '{"type":"object","properties":{}}', true);
insert into ce_response(intent_code, state_code, response_type, output_format, exact_text, enabled)
values ('RESET_SESSION', 'IDLE', 'EXACT', 'TEXT', 'Session reset complete. Starting fresh.', true);
RESET_SESSION config rows preview
| Table | Key values |
|---|---|
| ce_intent | intent_code=RESET_SESSION |
| ce_prompt_template | intent_code=RESET_SESSION, state_code=IDLE |
| ce_output_schema | empty schema object |
| ce_response | response_type=EXACT |
RESET_SESSION ce_audit trail
| Stage | What happened |
|---|---|
| SESSION_REHYDRATE | Existing conversation loaded |
| CONVERSATION_RESET | Intent/state/context wiped |
| STEP_EXIT (ResetConversationStep) | Reset step completed |
| ASSISTANT_OUTPUT | Reset confirmation emitted |
| CONVERSATION_PERSIST | Baseline state saved |
Intervention points
For extraction customization hook EngineStep.Name.SchemaExtractionStep. For final output normalization use ResponseTransformer.