Introducing Confident Voice: Watch the Launch Video Now

Journeys

Map the states a simulated user moves through, then generate a golden for every path.

A journey is a map of the ways a conversation with your AI app can go. It is a graph of states, which are what the simulated user says or does, joined by transitions, which are what your app says that moves the user to the next state. Every route from the start state to an end state is a path, and you can generate multi-turn goldens for every path so each branch of the conversation gets tested.

A journey's states and transitions on the Builder tab

Why Use Journeys?

  • Test every branch, not just the happy path. Map where your app makes a real decision — approve, refuse, ask for more, hand over to a person — and generate goldens for each path, including the failure branches.
  • Steer the simulated user turn by turn. During simulation, the user acts out the state it is in and moves on only when your app's reply matches a transition, instead of improvising from a single scenario.
  • See where conversations get stuck. Each simulated test case records the path it actually took, so you can compare it with the path its golden expected and find the state where your app never gave the reply the journey expected.
  • Find the states you're missing. Discovery walks real production threads or traces over the graph and proposes new states where conversations left it.

Create a journey

  1. Open Journeys

    Open Journeys from the project sidebar (under Resources in Test), then click Add journey.

  2. Choose how to build the graph

    • Build your own — start from a single Start state and build the graph yourself.
    • Generate with AI — describe the journey and AI drafts the states and transitions. A Description is required.
    • From traces or From threads — pick up to 50 production traces or threads, and Discovery recommends states from the paths they took. Use Traces when a single trace's input and output hold the whole conversation, and Threads for multi-turn conversations grouped by thread.
    Choose how to build the graph, then name the journey
  3. Name the journey

    • Name — a recognizable name, such as Refund request. Journey names are unique within a project.
    • Description — what the simulated user is trying to achieve, such as A customer asks for a refund on a late order.
  4. Create the journey

    Click Create (or Generate when AI or production conversations build the graph). The journey opens on its Builder tab, or on Discovery when you started from traces or threads.

You can rename a journey or edit its description from the top of its page. Deleting a journey from the list keeps the goldens generated from it.

Build the graph

The Builder tab shows the graph on the left and an inspector on the right. With nothing selected, the inspector's Overview counts the journey's states, end states, conditions and paths, groups its states by where they sit in the journey, and lists anything that needs attention.

Add states and transitions by hand, or let Discovery propose them from your production conversations.

States

Click a state to edit it in the inspector:

  • Name — shown on the graph and in each golden's path. Name it for the user's move, such as Asks for a refund.
  • What user says or does — the instructions the simulated user follows while in this state, written to the user (for example, Explain the order arrived late and ask for a refund). The Start state's instructions are all the simulated user knows when the conversation opens, so say who they are, their situation, and what they want.

The inspector also lists the states it Goes to and the condition for each.

Editing a state

To add a state, click + (Add transition) on a state and choose New state, or pick an existing state under Connect to existing to join the two. Click Save Changes to save your edits.

A state with no transitions leaving it is an End state: the simulated user sends one last message and the conversation ends. Name end states for the outcome, since goldens on that path expect the conversation to end that way. The Start state can't be deleted; deleting any other state also deletes the states that can no longer be reached without it.

Transitions

Click a transition on the graph to edit What the assistant does or says — the assistant reply that moves the simulated user along it, such as The assistant offers a refund. Describe your app's reply, not the user: the simulated user stays in a state, acting out its instructions, until your app's reply matches one of the transitions leaving it. Transitions leaving the same state should describe clearly different replies.

Paths

Each route from Start to an end state is a path. A path never visits the same state twice, and a journey lists at most 50 paths. The Golden coverage panel under the graph shows how many goldens follow each path to an end state.

Deleting or moving a transition, or deleting a state, removes the path from goldens that followed it.

Discover states from production

Instead of adding every state yourself, let Discovery find them. On the Discovery tab, click Discover, choose Threads or Traces, and select up to 50 production conversations. Discovery walks each conversation over the graph and reports how many conversations it walked, how many stayed on the graph and how many left it, and the states it recommends for where conversations left, grouped by what users were trying to do. Select a state to see the conversations that went through it.

Where production conversations stayed on the graph and where they left it

Recommended states also appear on the Builder graph and under Proposed states in the inspector. Click Add state to add one to the graph, Dismiss to hide it, or Accept all N to add every proposed state.

Evaluate a journey

Turn the journey's paths into goldens, then simulate them against your app to see which paths it gets through.

Generate goldens

Click Generate goldens on the Builder tab, or the sparkle button (Generate goldens for this path) next to a path in Golden coverage:

Generate goldens for every path
  • Dataset — the multi-turn dataset the goldens are added to.
  • Persona — optionally simulate every generated golden as this persona.
  • Routes — how many goldens to generate for each path (up to 100 per path).

Click Generate N goldens to create them. Each golden gets a Scenario and Expected Outcome written from its path's states and transitions, and is linked to the journey and its path.

You can also attach a journey to any golden in a multi-turn dataset: open the golden and pick one under Journey. Under Route, choose a path to keep the simulated user on that route, or leave it on Any branch to let your app's replies decide which branch the user takes.

A golden with a journey and route

Run a simulation

Click Evaluate on the dataset and turn on Include Simulation, as in multi-turn evals. For a golden with a journey, the simulated user starts at Start, follows each state's instructions, and moves along whichever transition your app's reply matches. The conversation stops at an end state.

Simulate the dataset's goldens against your app

Each test case records the path it took. Open a test case and select its Journey tab to compare the Expected path with the one Taken. A path that stops early shows the state where your app never gave the reply the journey expected.

Journey coverage

The Paths tab shows the paths conversations took through the journey:

  • Simulations — the paths simulated test cases took, over the last three months, with how many reached each end state, how many got stuck along the way, and, once test cases are scored, how many Passed every metric.
  • Production — the paths real conversations took in your latest threads and traces discoveries.
Where simulated conversations went, and where they got stuck

On the Builder tab, a state where simulations got stuck or repeated shows a badge; click it to see those simulations on the Paths tab.

Next Steps

Scaling beyond prototype?For teams evaluating Confident AI in productionTalk to us

Last updated on

Built byConfident AI