88import { createSignal , For , onMount , Show , createEffect , createMemo } from "solid-js"
99import { useKeyboard , useTerminalDimensions } from "@opentui/solid"
1010import { useTheme } from "@tui/shared/context/theme"
11- import type { TrackConfig , ConditionGroup , ConditionConfig } from "../../../../workflows/templates/types"
11+ import type { TracksConfig , ConditionGroup , ConditionConfig } from "../../../../workflows/templates/types"
1212import type { AgentDefinition } from "../../../../shared/agents/config/types"
1313
1414export interface OnboardProps {
15- tracks ?: Record < string , TrackConfig >
15+ tracks ?: TracksConfig
1616 conditionGroups ?: ConditionGroup [ ]
1717 controllerAgents ?: AgentDefinition [ ] // Available controller agents
1818 initialProjectName ?: string | null // If set, skip project name input
@@ -50,7 +50,7 @@ export function Onboard(props: OnboardProps) {
5050 // Track selections within current group (for multi-select groups)
5151 const [ currentGroupSelections , setCurrentGroupSelections ] = createSignal < Set < string > > ( new Set ( ) )
5252
53- const hasTracks = ( ) => props . tracks && Object . keys ( props . tracks ) . length > 0
53+ const hasTracks = ( ) => props . tracks && Object . keys ( props . tracks . options ) . length > 0
5454 const hasControllers = ( ) => props . controllerAgents && props . controllerAgents . length > 0
5555
5656 // Filter condition groups by selected track
@@ -90,10 +90,10 @@ export function Onboard(props: OnboardProps) {
9090 } )
9191
9292 const projectNameQuestion = "What is your project name?"
93- const trackQuestion = "What is your project size? "
93+ const trackQuestion = ( ) => props . tracks ?. question ?? "Select a track: "
9494 const controllerQuestion = "Select a controller agent for autonomous mode:"
9595
96- const trackEntries = ( ) => props . tracks ? Object . entries ( props . tracks ) : [ ]
96+ const trackEntries = ( ) => props . tracks ? Object . entries ( props . tracks . options ) : [ ]
9797 const controllerEntries = ( ) => props . controllerAgents ? props . controllerAgents . map ( a => [ a . id , a ] as const ) : [ ]
9898
9999 // Current condition entries (for group or child)
@@ -113,7 +113,7 @@ export function Onboard(props: OnboardProps) {
113113 const step = currentStep ( )
114114 switch ( step ) {
115115 case 'project_name' : return projectNameQuestion
116- case 'tracks' : return trackQuestion
116+ case 'tracks' : return trackQuestion ( )
117117 case 'condition_group' : return currentGroup ( ) ?. question ?? ""
118118 case 'condition_child' : return currentChildContext ( ) ?. question ?? ""
119119 case 'controller' : return controllerQuestion
0 commit comments