Raahat Scenario Harness

Curated conversation replay against the real runtime with stepwise diagnostics, readable deltas, and deterministic checks.

Boarding Information Only

boarding_information_only · boarding · 2/2 turns executed

Scenario Summary

IDboarding_information_only
TitleBoarding Information Only
Categoryboarding
Turns2/2
Run Statecompleted
information multi_turn

Seed State

UserUnknown user
Phone919900000105
Seed Workflow
Seed State Machine

Current Runtime State

Routeboarding
Workflowboarding
State Machine
Stageready_for_availability_check

Checks And Lifecycle

Expectations Passed2
Expectations Failed0
Heuristic Warnings0
Stage advanced Sticky continuation
Final assessmentScenario completed cleanly with no flagged issues.

Final Outcome

Completed

Completed vs partial run state.

Final Route

boarding

Current route at the end of the replay.

Final Workflow / State

boarding

Workflow preferred; state machine shown if no workflow is active.

Final Stage

ready_for_availability_check

Resolved from workflow progress or active snapshot.

Expectation Totals

Pass 2 Fail 0

Heuristic Totals

Warnings 0

Missing Fields

No unresolved workflow fields.

Lifecycle Events Seen

Stage advanced Sticky continuation
Turn 1
boarding boarding qualifying intent_match
Stage advanced New slots filled Memory updated
PASS
User
Do you have space in Baner for boarding and what are pickup options
Assistant
I can help plan that. Please share the dates, how many cats, and your pickup area.

What Changed This Turn

  • Workflow changed none -> boarding.
  • Stage advanced none -> qualifying.
  • New slot filled: last_question_key=grouped_core.
  • New slot filled: pickup_area=Baner.
  • New slot filled: pickup_required=True.
  • New slot filled: request_kind=availability.
  • New slot filled: service_area=Baner.
  • New slot filled: stage=qualifying.
  • Memory updated with area.
  • Memory updated with last_non_medical_domain.
  • Memory updated with pickup_required.
  • Memory updated with request_kind.
  • Snapshot version incremented to 1.

Expectation And Heuristic Results

Expectations
PASS: workflow_name matched expected value 'boarding'
Routing And Interpretation
{
  "confidence": 0.9,
  "reason_codes": [
    "intent_match"
  ],
  "route_type": "boarding",
  "workflow_name": "boarding"
}
{
  "confidence": 0.9,
  "entities": {
    "area": "baner",
    "city": "pune",
    "pickup_required": true,
    "user_goal": "availability",
    "zone": "west"
  },
  "is_vague": false,
  "primary_domain": "transport",
  "reason": "clear transport request",
  "secondary_domains": [
    "boarding"
  ],
  "should_continue_active_workflow": false,
  "should_preempt_active_workflow": false,
  "urgency_signal": "none"
}
Workflow Progress And Intents
{
  "missing_fields": [
    "dates",
    "pet_count"
  ],
  "next_question": "I can help plan that. Please share the dates, how many cats, and your pickup area.",
  "notes": [],
  "stage": "qualifying",
  "state_payload": {
    "check_in_date": null,
    "check_in_time_window": null,
    "check_out_date": null,
    "check_out_time_window": null,
    "duration_nights": null,
    "last_question_key": "grouped_core",
    "medical_flags": [],
    "pet_count": null,
    "pet_names": [],
    "pickup_area": "Baner",
    "pickup_required": true,
    "raw_date_text": null,
    "raw_duration_text": null,
    "request_kind": "availability",
    "service_area": "Baner",
    "special_needs": [],
    "stage": "qualifying"
  },
  "status": "collecting",
  "summary": "Baner",
  "superseded_by": null,
  "workflow_name": "boarding"
}
[]
Conversation Before And After
{
  "active_state_machine": null,
  "active_workflow": null,
  "current_state": null,
  "entities": {},
  "messages": [],
  "phone": "919900000105",
  "service_actions": [],
  "started_at": "2026-03-16T22:29:56.754608+00:00",
  "triage_state": null,
  "updated_at": "2026-03-16T22:29:56.754613+00:00"
}
{
  "active_state_machine": null,
  "active_workflow": {
    "last_question_key": "grouped_core",
    "missing_fields": [
      "dates",
      "pet_count"
    ],
    "next_question": "I can help plan that. Please share the dates, how many cats, and your pickup area.",
    "stage": "qualifying",
    "started_at": "2026-03-16T22:29:56.773762+00:00",
    "state_payload": {
      "check_in_date": null,
      "check_in_time_window": null,
      "check_out_date": null,
      "check_out_time_window": null,
      "duration_nights": null,
      "last_question_key": "grouped_core",
      "medical_flags": [],
      "pet_count": null,
      "pet_names": [],
      "pickup_area": "Baner",
      "pickup_required": true,
      "raw_date_text": null,
      "raw_duration_text": null,
      "request_kind": "availability",
      "service_area": "Baner",
      "special_needs": [],
      "stage": "qualifying"
    },
    "status": "collecting",
    "summary": "Baner",
    "superseded_by": null,
    "updated_at": "2026-03-16T22:29:56.773765+00:00",
    "version": 1,
    "workflow_name": "boarding"
  },
  "current_state": "QUALIFYING",
  "entities": {
    "area": "Baner",
    "last_non_medical_domain": "boarding",
    "pickup_required": true,
    "request_kind": "availability"
  },
  "messages": [
    {
      "role": "user",
      "source": null,
      "text": "Do you have space in Baner for boarding and what are pickup options",
      "timestamp": "2026-03-16T22:29:56.773805+00:00"
    },
    {
      "role": "assistant",
      "source": "B",
      "text": "I can help plan that. Please share the dates, how many cats, and your pickup area.",
      "timestamp": "2026-03-16T22:29:56.773809+00:00"
    }
  ],
  "phone": "919900000105",
  "service_actions": [],
  "started_at": "2026-03-16T22:29:56.773799+00:00",
  "triage_state": null,
  "updated_at": "2026-03-16T22:29:56.773830+00:00"
}
Memory And Trace
{
  "active_state_machine": null,
  "backend": "inmemory",
  "conversation_key_used": "919900000105",
  "conversation_keys": [
    "919900000105",
    "9900000105"
  ],
  "current_state": null,
  "loaded": true,
  "ping_ok": null,
  "redis_enabled": false,
  "thread_message_count": 0,
  "ttl_seconds_remaining": null
}
{
  "active_state_machine": null,
  "backend": "inmemory",
  "conversation_key_used": "919900000105",
  "conversation_keys": [
    "919900000105",
    "9900000105"
  ],
  "current_state": "QUALIFYING",
  "loaded": true,
  "ping_ok": null,
  "redis_enabled": false,
  "thread_message_count": 2,
  "ttl_seconds_remaining": null
}
[
  {
    "component": "brain",
    "payload": {
      "channel": "scenario_harness",
      "conversation_key": "919900000105",
      "message_text": "Do you have space in Baner for boarding and what are pickup options",
      "normalized_phone": "919900000105",
      "phone": "919900000105"
    },
    "stage": "input",
    "summary": "Received normalized message envelope",
    "timestamp": "2026-03-16T22:29:56.772963+00:00"
  },
  {
    "component": "memory_store",
    "payload": {
      "active_state_machine": null,
      "backend": "inmemory",
      "current_state": null,
      "loaded": true,
      "message_count": 0,
      "storage_key": "919900000105"
    },
    "stage": "memory",
    "summary": "Loaded conversation memory",
    "timestamp": "2026-03-16T22:29:56.772967+00:00"
  },
  {
    "component": "brain",
    "payload": {
      "has_prior_triage_state": false,
      "prior_state_error": null
    },
    "stage": "state",
    "summary": "Parsed prior working state",
    "timestamp": "2026-03-16T22:29:56.772969+00:00"
  },
  {
    "component": "brain",
    "payload": {
      "compact_payload_keys": [
        "incoming_message"
      ],
      "has_conversation": true,
      "has_customer": false,
      "has_icp": false,
      "has_profile": false,
      "recent_import_count": 0,
      "storage_key": "919900000105"
    },
    "stage": "context",
    "summary": "Assembled SessionContext for the turn",
    "timestamp": "2026-03-16T22:29:56.772972+00:00"
  },
  {
    "component": "contact_resolver",
    "payload": {
      "confidence": 0.0,
      "customer_id": null,
      "display_name": null,
      "matched_phone": null,
      "status": "UNKNOWN"
    },
    "stage": "decision",
    "summary": "Resolved sender contact status",
    "timestamp": "2026-03-16T22:29:56.772977+00:00"
  },
  {
    "component": "turn_interpretation",
    "payload": {
      "confidence": 0.9,
      "contact_status": "UNKNOWN",
      "entities": {
        "area": "baner",
        "city": "pune",
        "pickup_required": true,
        "user_goal": "availability",
        "zone": "west"
      },
      "is_vague": false,
      "primary_domain": "transport",
      "reason": "clear transport request",
      "secondary_domains": [
        "boarding"
      ],
      "should_continue_active_workflow": false,
      "should_preempt_active_workflow": false,
      "urgency_signal": "none"
    },
    "stage": "decision",
    "summary": "Resolved turn interpretation deterministically",
    "timestamp": "2026-03-16T22:29:56.773265+00:00"
  },
  {
    "component": "profile_context",
    "payload": {
      "phone": "919900000105"
    },
    "stage": "context",
    "summary": "No customer matched provided phone",
    "timestamp": "2026-03-16T22:29:56.773273+00:00"
  },
  {
    "component": "entry_policy",
    "payload": {
      "allow_identity_question": true,
      "bypass_onboarding": false,
      "defer_existing_workflow": false,
      "preempt_active_workflow": false,
      "reason": "unknown contact with a clear non-urgent request can allow one light identity question later",
      "run_welcome_orientation": false,
      "selected_posture": "light_onboarding"
    },
    "stage": "decision",
    "summary": "Determined entry posture for this turn",
    "timestamp": "2026-03-16T22:29:56.773276+00:00"
  },
  {
    "component": "intent_parser",
    "payload": {
      "continue_active_workflow": false,
      "primary_intent": "boarding_request",
      "reason": "matched_keyword_rules",
      "resolved_state_machine": "boarding",
      "workflow_source": "intent_match"
    },
    "stage": "decision",
    "summary": "Resolved primary intent and state machine",
    "timestamp": "2026-03-16T22:29:56.773326+00:00"
  },
  {
    "component": "context_builder",
    "payload": {
      "active_workflow": "boarding",
      "background_fact_count": 0,
      "current_step": null,
      "foreground_fact_count": 4,
      "prompt_family": "general",
      "purpose": "workflow_response"
    },
    "stage": "context",
    "summary": "Built workflow-response context slice for prompt assembly",
    "timestamp": "2026-03-16T22:29:56.773365+00:00"
  },
  {
    "component": "workflow",
    "payload": {
      "action_intents": [],
      "missing_fields": [
        "dates",
        "pet_count"
      ],
      "next_question": "I can help plan that. Please share the dates, how many cats, and your pickup area.",
      "stage": "qualifying",
      "status": "collecting",
      "summary": "Baner",
      "workflow_name": "boarding"
    },
    "stage": "decision",
    "summary": "Executed deterministic workflow handler",
    "timestamp": "2026-03-16T22:29:56.773787+00:00"
  },
  {
    "component": "memory_store",
    "payload": {
      "active_state_machine": null,
      "current_state": "QUALIFYING",
      "message_count_after": 2,
      "storage_key": "919900000105"
    },
    "stage": "mutation",
    "summary": "Persisted updated conversation memory",
    "timestamp": "2026-03-16T22:29:56.774172+00:00"
  }
]
Turn 2
boarding boarding ready_for_availability_check active_workflow_snapshot follow_up active_workflow_snapshot
Sticky continuation Stage advanced New slots filled Memory updated Stayed on boarding
PASS
User
For one cat next weekend
Assistant
Got it. I have the dates, cat count, and area for the boarding stay. I’ll have the team confirm availability and get back to you.

What Changed This Turn

  • Active workflow remained boarding.
  • Stage advanced qualifying -> ready_for_availability_check.
  • New slot filled: check_in_date=2026-03-28.
  • New slot filled: check_out_date=2026-03-29.
  • New slot filled: check_out_time_window=evening.
  • New slot filled: duration_nights=1.
  • New slot filled: pet_count=1.
  • New slot filled: raw_date_text=next weekend.
  • Memory updated with cat_count.
  • Memory updated with check_in_date.
  • Memory updated with check_out_date.
  • Memory updated with date_phrase.
  • Memory updated with duration_nights.
  • Snapshot version incremented to 2.

Expectation And Heuristic Results

Expectations
PASS: workflow_name matched expected value 'boarding'
Routing And Interpretation
{
  "confidence": 0.92,
  "reason_codes": [
    "active_workflow_snapshot",
    "follow_up",
    "active_workflow_snapshot",
    "follow_up_slot_fill"
  ],
  "route_type": "boarding",
  "workflow_name": "boarding"
}
{
  "confidence": 0.92,
  "entities": {
    "cat_count": 1,
    "date_phrase": "next weekend"
  },
  "is_vague": false,
  "primary_domain": "boarding",
  "reason": "fills requested cat_count for active workflow",
  "secondary_domains": [],
  "should_continue_active_workflow": true,
  "should_preempt_active_workflow": false,
  "urgency_signal": "none"
}
Workflow Progress And Intents
{
  "missing_fields": [],
  "next_question": null,
  "notes": [],
  "stage": "ready_for_availability_check",
  "state_payload": {
    "check_in_date": "2026-03-28",
    "check_in_time_window": null,
    "check_out_date": "2026-03-29",
    "check_out_time_window": "evening",
    "duration_nights": 1,
    "last_question_key": "grouped_core",
    "medical_flags": [],
    "pet_count": 1,
    "pet_names": [],
    "pickup_area": "Baner",
    "pickup_required": true,
    "raw_date_text": "next weekend",
    "raw_duration_text": null,
    "request_kind": "availability",
    "service_area": "Baner",
    "special_needs": [],
    "stage": "ready_for_availability_check"
  },
  "status": "ready",
  "summary": "1 cat, 2026-03-28 to 2026-03-29, Baner",
  "superseded_by": null,
  "workflow_name": "boarding"
}
[
  {
    "action_type": "collect_boarding_request",
    "idempotency_key": "1eaa970d4ced45d5",
    "metadata": {
      "missing_fields": [],
      "normalized_slots": {
        "check_in_date": "2026-03-28",
        "check_in_time_window": null,
        "check_out_date": "2026-03-29",
        "check_out_time_window": "evening",
        "duration_nights": 1,
        "medical_flags": [],
        "pet_count": 1,
        "pet_names": [],
        "pickup_area": "Baner",
        "pickup_required": true,
        "raw_date_text": "next weekend",
        "raw_duration_text": null,
        "request_kind": "availability",
        "service_area": "Baner",
        "special_needs": []
      },
      "snapshot_version": 2,
      "workflow_name": "boarding",
      "workflow_stage": "ready_for_availability_check"
    },
    "payload": {
      "check_in_date": "2026-03-28",
      "check_in_time_window": null,
      "check_out_date": "2026-03-29",
      "check_out_time_window": "evening",
      "duration_nights": 1,
      "medical_flags": [],
      "pet_count": 1,
      "pet_names": [],
      "pickup_area": "Baner",
      "pickup_required": true,
      "raw_date_text": "next weekend",
      "raw_duration_text": null,
      "request_kind": "availability",
      "service_area": "Baner",
      "special_needs": []
    },
    "priority": "normal",
    "reason": "boarding workflow has enough structured detail for ops handling",
    "requires_admin_review": false,
    "source_workflow": "boarding",
    "status": "ready",
    "user_visible": false
  },
  {
    "action_type": "check_boarding_inventory",
    "idempotency_key": "465383a6bfa94a2a",
    "metadata": {
      "missing_fields": [],
      "normalized_slots": {
        "check_in_date": "2026-03-28",
        "check_in_time_window": null,
        "check_out_date": "2026-03-29",
        "check_out_time_window": "evening",
        "duration_nights": 1,
        "medical_flags": [],
        "pet_count": 1,
        "pet_names": [],
        "pickup_area": "Baner",
        "pickup_required": true,
        "raw_date_text": "next weekend",
        "raw_duration_text": null,
        "request_kind": "availability",
        "service_area": "Baner",
        "special_needs": []
      },
      "snapshot_version": 2,
      "workflow_name": "boarding",
      "workflow_stage": "ready_for_availability_check"
    },
    "payload": {
      "check_in_date": "2026-03-28",
      "check_in_time_window": null,
      "check_out_date": "2026-03-29",
      "check_out_time_window": "evening",
      "duration_nights": 1,
      "medical_flags": [],
      "pet_count": 1,
      "pet_names": [],
      "pickup_area": "Baner",
      "pickup_required": true,
      "raw_date_text": "next weekend",
      "raw_duration_text": null,
      "request_kind": "availability",
      "service_area": "Baner",
      "special_needs": []
    },
    "priority": "normal",
    "reason": "boarding workflow is ready for an availability check",
    "requires_admin_review": false,
    "source_workflow": "boarding",
    "status": "ready",
    "user_visible": false
  },
  {
    "action_type": "request_boarding_admin_review",
    "idempotency_key": "7b3f5e9f4aeb7879",
    "metadata": {
      "missing_fields": [],
      "normalized_slots": {
        "check_in_date": "2026-03-28",
        "check_in_time_window": null,
        "check_out_date": "2026-03-29",
        "check_out_time_window": "evening",
        "duration_nights": 1,
        "medical_flags": [],
        "pet_count": 1,
        "pet_names": [],
        "pickup_area": "Baner",
        "pickup_required": true,
        "raw_date_text": "next weekend",
        "raw_duration_text": null,
        "request_kind": "availability",
        "service_area": "Baner",
        "special_needs": []
      },
      "snapshot_version": 2,
      "workflow_name": "boarding",
      "workflow_stage": "ready_for_availability_check"
    },
    "payload": {
      "check_in_date": "2026-03-28",
      "check_in_time_window": null,
      "check_out_date": "2026-03-29",
      "check_out_time_window": "evening",
      "duration_nights": 1,
      "medical_flags": [],
      "pet_count": 1,
      "pet_names": [],
      "pickup_area": "Baner",
      "pickup_required": true,
      "raw_date_text": "next weekend",
      "raw_duration_text": null,
      "request_kind": "availability",
      "service_area": "Baner",
      "special_needs": []
    },
    "priority": "normal",
    "reason": "boarding workflow is complete enough for team confirmation",
    "requires_admin_review": true,
    "source_workflow": "boarding",
    "status": "needs_admin_review",
    "user_visible": false
  },
  {
    "action_type": "request_availability_check",
    "idempotency_key": "f2162ab827bc92a9",
    "metadata": {
      "missing_fields": [],
      "normalized_slots": {
        "check_in_date": "2026-03-28",
        "check_in_time_window": null,
        "check_out_date": "2026-03-29",
        "check_out_time_window": "evening",
        "duration_nights": 1,
        "medical_flags": [],
        "pet_count": 1,
        "pet_names": [],
        "pickup_area": "Baner",
        "pickup_required": true,
        "raw_date_text": "next weekend",
        "raw_duration_text": null,
        "request_kind": "availability",
        "service_area": "Baner",
        "special_needs": []
      },
      "snapshot_version": 2,
      "workflow_name": "boarding",
      "workflow_stage": "ready_for_availability_check"
    },
    "payload": {
      "check_in_date": "2026-03-28",
      "check_in_time_window": null,
      "check_out_date": "2026-03-29",
      "check_out_time_window": "evening",
      "duration_nights": 1,
      "medical_flags": [],
      "pet_count": 1,
      "pet_names": [],
      "pickup_area": "Baner",
      "pickup_required": true,
      "raw_date_text": "next weekend",
      "raw_duration_text": null,
      "request_kind": "availability",
      "service_area": "Baner",
      "special_needs": []
    },
    "priority": "normal",
    "reason": "boarding workflow is ready for an availability check",
    "requires_admin_review": true,
    "source_workflow": "boarding",
    "status": "needs_admin_review",
    "user_visible": false
  }
]
Conversation Before And After
{
  "active_state_machine": null,
  "active_workflow": {
    "last_question_key": "grouped_core",
    "missing_fields": [
      "dates",
      "pet_count"
    ],
    "next_question": "I can help plan that. Please share the dates, how many cats, and your pickup area.",
    "stage": "qualifying",
    "started_at": "2026-03-16T22:29:56.773762+00:00",
    "state_payload": {
      "check_in_date": null,
      "check_in_time_window": null,
      "check_out_date": null,
      "check_out_time_window": null,
      "duration_nights": null,
      "last_question_key": "grouped_core",
      "medical_flags": [],
      "pet_count": null,
      "pet_names": [],
      "pickup_area": "Baner",
      "pickup_required": true,
      "raw_date_text": null,
      "raw_duration_text": null,
      "request_kind": "availability",
      "service_area": "Baner",
      "special_needs": [],
      "stage": "qualifying"
    },
    "status": "collecting",
    "summary": "Baner",
    "superseded_by": null,
    "updated_at": "2026-03-16T22:29:56.773765+00:00",
    "version": 1,
    "workflow_name": "boarding"
  },
  "current_state": "QUALIFYING",
  "entities": {
    "area": "Baner",
    "last_non_medical_domain": "boarding",
    "pickup_required": true,
    "request_kind": "availability"
  },
  "messages": [
    {
      "role": "user",
      "source": null,
      "text": "Do you have space in Baner for boarding and what are pickup options",
      "timestamp": "2026-03-16T22:29:56.773805+00:00"
    },
    {
      "role": "assistant",
      "source": "B",
      "text": "I can help plan that. Please share the dates, how many cats, and your pickup area.",
      "timestamp": "2026-03-16T22:29:56.773809+00:00"
    }
  ],
  "phone": "919900000105",
  "service_actions": [],
  "started_at": "2026-03-16T22:29:56.773799+00:00",
  "triage_state": null,
  "updated_at": "2026-03-16T22:29:56.773830+00:00"
}
{
  "active_state_machine": null,
  "active_workflow": {
    "last_question_key": null,
    "missing_fields": [],
    "next_question": null,
    "stage": "ready_for_availability_check",
    "started_at": "2026-03-16T22:29:56.773762+00:00",
    "state_payload": {
      "check_in_date": "2026-03-28",
      "check_in_time_window": null,
      "check_out_date": "2026-03-29",
      "check_out_time_window": "evening",
      "duration_nights": 1,
      "last_question_key": "grouped_core",
      "medical_flags": [],
      "pet_count": 1,
      "pet_names": [],
      "pickup_area": "Baner",
      "pickup_required": true,
      "raw_date_text": "next weekend",
      "raw_duration_text": null,
      "request_kind": "availability",
      "service_area": "Baner",
      "special_needs": [],
      "stage": "ready_for_availability_check"
    },
    "status": "ready",
    "summary": "1 cat, 2026-03-28 to 2026-03-29, Baner",
    "superseded_by": null,
    "updated_at": "2026-03-16T22:29:56.778934+00:00",
    "version": 2,
    "workflow_name": "boarding"
  },
  "current_state": "READY_FOR_AVAILABILITY_CHECK",
  "entities": {
    "area": "Baner",
    "cat_count": 1,
    "check_in_date": "2026-03-28",
    "check_out_date": "2026-03-29",
    "date_phrase": "next weekend",
    "duration_nights": 1,
    "last_non_medical_domain": "boarding",
    "pickup_required": true,
    "request_kind": "availability"
  },
  "messages": [
    {
      "role": "user",
      "source": null,
      "text": "Do you have space in Baner for boarding and what are pickup options",
      "timestamp": "2026-03-16T22:29:56.773805+00:00"
    },
    {
      "role": "assistant",
      "source": "B",
      "text": "I can help plan that. Please share the dates, how many cats, and your pickup area.",
      "timestamp": "2026-03-16T22:29:56.773809+00:00"
    },
    {
      "role": "user",
      "source": null,
      "text": "For one cat next weekend",
      "timestamp": "2026-03-16T22:29:56.778964+00:00"
    },
    {
      "role": "assistant",
      "source": "B",
      "text": "Got it. I have the dates, cat count, and area for the boarding stay. I’ll have the team confirm availability and get back to you.",
      "timestamp": "2026-03-16T22:29:56.778966+00:00"
    }
  ],
  "phone": "919900000105",
  "service_actions": [],
  "started_at": "2026-03-16T22:29:56.773799+00:00",
  "triage_state": null,
  "updated_at": "2026-03-16T22:29:56.778979+00:00"
}
Memory And Trace
{
  "active_state_machine": null,
  "backend": "inmemory",
  "conversation_key_used": "919900000105",
  "conversation_keys": [
    "919900000105",
    "9900000105"
  ],
  "current_state": "QUALIFYING",
  "loaded": true,
  "ping_ok": null,
  "redis_enabled": false,
  "thread_message_count": 2,
  "ttl_seconds_remaining": null
}
{
  "active_state_machine": null,
  "backend": "inmemory",
  "conversation_key_used": "919900000105",
  "conversation_keys": [
    "919900000105",
    "9900000105"
  ],
  "current_state": "READY_FOR_AVAILABILITY_CHECK",
  "loaded": true,
  "ping_ok": null,
  "redis_enabled": false,
  "thread_message_count": 4,
  "ttl_seconds_remaining": null
}
[
  {
    "component": "brain",
    "payload": {
      "channel": "scenario_harness",
      "conversation_key": "919900000105",
      "message_text": "For one cat next weekend",
      "normalized_phone": "919900000105",
      "phone": "919900000105"
    },
    "stage": "input",
    "summary": "Received normalized message envelope",
    "timestamp": "2026-03-16T22:29:56.778488+00:00"
  },
  {
    "component": "memory_store",
    "payload": {
      "active_state_machine": null,
      "backend": "inmemory",
      "current_state": "QUALIFYING",
      "loaded": true,
      "message_count": 2,
      "storage_key": "919900000105"
    },
    "stage": "memory",
    "summary": "Loaded conversation memory",
    "timestamp": "2026-03-16T22:29:56.778492+00:00"
  },
  {
    "component": "brain",
    "payload": {
      "has_prior_triage_state": false,
      "prior_state_error": null
    },
    "stage": "state",
    "summary": "Parsed prior working state",
    "timestamp": "2026-03-16T22:29:56.778494+00:00"
  },
  {
    "component": "brain",
    "payload": {
      "compact_payload_keys": [
        "incoming_message"
      ],
      "has_conversation": true,
      "has_customer": false,
      "has_icp": false,
      "has_profile": false,
      "recent_import_count": 0,
      "storage_key": "919900000105"
    },
    "stage": "context",
    "summary": "Assembled SessionContext for the turn",
    "timestamp": "2026-03-16T22:29:56.778497+00:00"
  },
  {
    "component": "contact_resolver",
    "payload": {
      "confidence": 0.0,
      "customer_id": null,
      "display_name": null,
      "matched_phone": null,
      "status": "UNKNOWN"
    },
    "stage": "decision",
    "summary": "Resolved sender contact status",
    "timestamp": "2026-03-16T22:29:56.778500+00:00"
  },
  {
    "component": "turn_interpretation",
    "payload": {
      "confidence": 0.92,
      "contact_status": "UNKNOWN",
      "entities": {
        "cat_count": 1,
        "date_phrase": "next weekend"
      },
      "is_vague": false,
      "primary_domain": "boarding",
      "reason": "fills requested cat_count for active workflow",
      "secondary_domains": [],
      "should_continue_active_workflow": true,
      "should_preempt_active_workflow": false,
      "urgency_signal": "none"
    },
    "stage": "decision",
    "summary": "Resolved turn interpretation deterministically",
    "timestamp": "2026-03-16T22:29:56.778626+00:00"
  },
  {
    "component": "profile_context",
    "payload": {
      "phone": "919900000105"
    },
    "stage": "context",
    "summary": "No customer matched provided phone",
    "timestamp": "2026-03-16T22:29:56.778629+00:00"
  },
  {
    "component": "entry_policy",
    "payload": {
      "allow_identity_question": false,
      "bypass_onboarding": true,
      "defer_existing_workflow": false,
      "preempt_active_workflow": false,
      "reason": "existing active workflow should continue unless urgency preempts it",
      "run_welcome_orientation": false,
      "selected_posture": "continue_active"
    },
    "stage": "decision",
    "summary": "Determined entry posture for this turn",
    "timestamp": "2026-03-16T22:29:56.778631+00:00"
  },
  {
    "component": "intent_parser",
    "payload": {
      "continue_active_workflow": true,
      "primary_intent": "boarding_request",
      "reason": "continue_active_workflow_snapshot_from_follow_up",
      "resolved_state_machine": "boarding",
      "workflow_source": "active_workflow"
    },
    "stage": "decision",
    "summary": "Resolved primary intent and state machine",
    "timestamp": "2026-03-16T22:29:56.778672+00:00"
  },
  {
    "component": "context_builder",
    "payload": {
      "active_workflow": "boarding",
      "background_fact_count": 0,
      "current_step": "QUALIFYING",
      "foreground_fact_count": 5,
      "prompt_family": "general",
      "purpose": "workflow_response"
    },
    "stage": "context",
    "summary": "Built workflow-response context slice for prompt assembly",
    "timestamp": "2026-03-16T22:29:56.778701+00:00"
  },
  {
    "component": "workflow",
    "payload": {
      "action_intents": [
        {
          "action_type": "collect_boarding_request",
          "idempotency_key": "1eaa970d4ced45d5",
          "metadata": {
            "missing_fields": [],
            "normalized_slots": {
              "check_in_date": "2026-03-28",
              "check_in_time_window": null,
              "check_out_date": "2026-03-29",
              "check_out_time_window": "evening",
              "duration_nights": 1,
              "medical_flags": [],
              "pet_count": 1,
              "pet_names": [],
              "pickup_area": "Baner",
              "pickup_required": true,
              "raw_date_text": "next weekend",
              "raw_duration_text": null,
              "request_kind": "availability",
              "service_area": "Baner",
              "special_needs": []
            },
            "snapshot_version": 2,
            "workflow_name": "boarding",
            "workflow_stage": "ready_for_availability_check"
          },
          "payload": {
            "check_in_date": "2026-03-28",
            "check_in_time_window": null,
            "check_out_date": "2026-03-29",
            "check_out_time_window": "evening",
            "duration_nights": 1,
            "medical_flags": [],
            "pet_count": 1,
            "pet_names": [],
            "pickup_area": "Baner",
            "pickup_required": true,
            "raw_date_text": "next weekend",
            "raw_duration_text": null,
            "request_kind": "availability",
            "service_area": "Baner",
            "special_needs": []
          },
          "priority": "normal",
          "reason": "boarding workflow has enough structured detail for ops handling",
          "requires_admin_review": false,
          "source_workflow": "boarding",
          "status": "ready",
          "user_visible": false
        },
        {
          "action_type": "check_boarding_inventory",
          "idempotency_key": "465383a6bfa94a2a",
          "metadata": {
            "missing_fields": [],
            "normalized_slots": {
              "check_in_date": "2026-03-28",
              "check_in_time_window": null,
              "check_out_date": "2026-03-29",
              "check_out_time_window": "evening",
              "duration_nights": 1,
              "medical_flags": [],
              "pet_count": 1,
              "pet_names": [],
              "pickup_area": "Baner",
              "pickup_required": true,
              "raw_date_text": "next weekend",
              "raw_duration_text": null,
              "request_kind": "availability",
              "service_area": "Baner",
              "special_needs": []
            },
            "snapshot_version": 2,
            "workflow_name": "boarding",
            "workflow_stage": "ready_for_availability_check"
          },
          "payload": {
            "check_in_date": "2026-03-28",
            "check_in_time_window": null,
            "check_out_date": "2026-03-29",
            "check_out_time_window": "evening",
            "duration_nights": 1,
            "medical_flags": [],
            "pet_count": 1,
            "pet_names": [],
            "pickup_area": "Baner",
            "pickup_required": true,
            "raw_date_text": "next weekend",
            "raw_duration_text": null,
            "request_kind": "availability",
            "service_area": "Baner",
            "special_needs": []
          },
          "priority": "normal",
          "reason": "boarding workflow is ready for an availability check",
          "requires_admin_review": false,
          "source_workflow": "boarding",
          "status": "ready",
          "user_visible": false
        },
        {
          "action_type": "request_boarding_admin_review",
          "idempotency_key": "7b3f5e9f4aeb7879",
          "metadata": {
            "missing_fields": [],
            "normalized_slots": {
              "check_in_date": "2026-03-28",
              "check_in_time_window": null,
              "check_out_date": "2026-03-29",
              "check_out_time_window": "evening",
              "duration_nights": 1,
              "medical_flags": [],
              "pet_count": 1,
              "pet_names": [],
              "pickup_area": "Baner",
              "pickup_required": true,
              "raw_date_text": "next weekend",
              "raw_duration_text": null,
              "request_kind": "availability",
              "service_area": "Baner",
              "special_needs": []
            },
            "snapshot_version": 2,
            "workflow_name": "boarding",
            "workflow_stage": "ready_for_availability_check"
          },
          "payload": {
            "check_in_date": "2026-03-28",
            "check_in_time_window": null,
            "check_out_date": "2026-03-29",
            "check_out_time_window": "evening",
            "duration_nights": 1,
            "medical_flags": [],
            "pet_count": 1,
            "pet_names": [],
            "pickup_area": "Baner",
            "pickup_required": true,
            "raw_date_text": "next weekend",
            "raw_duration_text": null,
            "request_kind": "availability",
            "service_area": "Baner",
            "special_needs": []
          },
          "priority": "normal",
          "reason": "boarding workflow is complete enough for team confirmation",
          "requires_admin_review": true,
          "source_workflow": "boarding",
          "status": "needs_admin_review",
          "user_visible": false
        },
        {
          "action_type": "request_availability_check",
          "idempotency_key": "f2162ab827bc92a9",
          "metadata": {
            "missing_fields": [],
            "normalized_slots": {
              "check_in_date": "2026-03-28",
              "check_in_time_window": null,
              "check_out_date": "2026-03-29",
              "check_out_time_window": "evening",
              "duration_nights": 1,
              "medical_flags": [],
              "pet_count": 1,
              "pet_names": [],
              "pickup_area": "Baner",
              "pickup_required": true,
              "raw_date_text": "next weekend",
              "raw_duration_text": null,
              "request_kind": "availability",
              "service_area": "Baner",
              "special_needs": []
            },
            "snapshot_version": 2,
            "workflow_name": "boarding",
            "workflow_stage": "ready_for_availability_check"
          },
          "payload": {
            "check_in_date": "2026-03-28",
            "check_in_time_window": null,
            "check_out_date": "2026-03-29",
            "check_out_time_window": "evening",
            "duration_nights": 1,
            "medical_flags": [],
            "pet_count": 1,
            "pet_names": [],
            "pickup_area": "Baner",
            "pickup_required": true,
            "raw_date_text": "next weekend",
            "raw_duration_text": null,
            "request_kind": "availability",
            "service_area": "Baner",
            "special_needs": []
          },
          "priority": "normal",
          "reason": "boarding workflow is ready for an availability check",
          "requires_admin_review": true,
          "source_workflow": "boarding",
          "status": "needs_admin_review",
          "user_visible": false
        }
      ],
      "missing_fields": [],
      "next_question": null,
      "stage": "ready_for_availability_check",
      "status": "ready",
      "summary": "1 cat, 2026-03-28 to 2026-03-29, Baner",
      "workflow_name": "boarding"
    },
    "stage": "decision",
    "summary": "Executed deterministic workflow handler",
    "timestamp": "2026-03-16T22:29:56.778951+00:00"
  },
  {
    "component": "memory_store",
    "payload": {
      "active_state_machine": null,
      "current_state": "READY_FOR_AVAILABILITY_CHECK",
      "message_count_after": 4,
      "storage_key": "919900000105"
    },
    "stage": "mutation",
    "summary": "Persisted updated conversation memory",
    "timestamp": "2026-03-16T22:29:56.779502+00:00"
  }
]