debug

package
v1.0.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 15, 2026 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Overview

Package debug provides an interactive TUI for debugging Cromwell workflow metadata.

Index

Constants

View Source
const (
	NodeTypeWorkflow    = tree.NodeTypeWorkflow
	NodeTypeCall        = tree.NodeTypeCall
	NodeTypeSubWorkflow = tree.NodeTypeSubWorkflow
	NodeTypeShard       = tree.NodeTypeShard
)

NodeType constants

Variables

This section is empty.

Functions

func ExpandIcon

func ExpandIcon(expanded bool, hasChildren bool) string

ExpandIcon returns the expand/collapse icon.

func NodeTypeIcon

func NodeTypeIcon(t NodeType) string

NodeTypeIcon returns an icon for the node type.

func StatusIcon

func StatusIcon(status string) string

StatusIcon returns an icon for the status.

func StatusStyle

func StatusStyle(status string) lipgloss.Style

StatusStyle returns the appropriate style for a status.

func TreePrefix

func TreePrefix(depth int, isLast bool, parentExpanded bool) string

TreePrefix returns the tree drawing prefix.

Types

type CallDetails

type CallDetails = workflow.Call

Type aliases from new packages for backward compatibility

type ChatDataSelection added in v1.0.3

type ChatDataSelection struct {
	Metadata      bool
	Stdout        bool
	Stderr        bool
	MonitoringLog bool
	BatchLogs     bool
}

ChatDataSelection holds user selections for what data to include in chat context.

func DefaultChatDataSelection added in v1.0.3

func DefaultChatDataSelection() ChatDataSelection

DefaultChatDataSelection returns the default selection (metadata and stderr enabled).

type ChatDependencies added in v1.0.3

type ChatDependencies struct {
	LLM        adkmodel.LLM
	Tools      []tool.Tool
	SessionSvc adksession.Service
}

ChatDependencies holds optional dependencies for chat functionality.

type CollectedChatData added in v1.0.3

type CollectedChatData struct {
	Metadata         *workflow.Call
	StdoutContent    string
	StderrContent    string
	MonitoringReport *workflow.EfficiencyReport
	BatchLogs        []ports.BatchLogEntry
	Errors           []string // Data sources that failed to load
}

CollectedChatData holds the data collected for chat context.

type ExecutionEvent

type ExecutionEvent = workflow.ExecutionEvent

Type aliases from new packages for backward compatibility

type Failure

type Failure = workflow.Failure

Type aliases from new packages for backward compatibility

type KeyMap

type KeyMap struct {
	Up          key.Binding
	Down        key.Binding
	Left        key.Binding
	Right       key.Binding
	Enter       key.Binding
	Space       key.Binding
	Tab         key.Binding
	Quit        key.Binding
	Help        key.Binding
	Escape      key.Binding
	Details     key.Binding
	ExpandAll   key.Binding
	CollapseAll key.Binding
	Home        key.Binding
	End         key.Binding
	PageUp      key.Binding
	PageDown    key.Binding
	Copy        key.Binding
	Chat        key.Binding
}

KeyMap defines all key bindings for the TUI.

func DefaultKeyMap

func DefaultKeyMap() KeyMap

DefaultKeyMap returns the default key bindings.

func (KeyMap) FullHelp

func (k KeyMap) FullHelp() [][]key.Binding

FullHelp returns keybindings for the expanded help view.

func (KeyMap) ShortHelp

func (k KeyMap) ShortHelp() []key.Binding

ShortHelp returns keybindings to be shown in the mini help view.

type ModalKind added in v1.0.3

type ModalKind int

ModalKind identifies which modal is currently active.

const (
	ModalNone ModalKind = iota
	ModalChatSelection
	ModalHelp
	ModalLog
	ModalInputs
	ModalOutputs
	ModalOptions
	ModalGlobalTimeline
	ModalCallInputs
	ModalCallOutputs
	ModalCallCommand
	ModalBatchLogs
)

type Model

type Model struct {

	// Navigation state (for external handlers to check)
	NavigateToChatSystemInstruction string
	NavigateToChatContextSummary    string
	// contains filtered or unexported fields
}

Model is the main model for the debug TUI.

func NewModel

NewModel creates a model with all dependencies. The workflow is parsed by the handler and passed in; tree building happens here.

func NewModelWithChat added in v1.0.3

NewModelWithChat creates a model with all dependencies including optional chat support.

func (Model) Init

func (m Model) Init() tea.Cmd

Init initializes the model.

func (Model) Update

func (m Model) Update(msg tea.Msg) (tea.Model, tea.Cmd)

Update handles messages and updates the model.

func (Model) View

func (m Model) View() string

View renders the current model state.

type NodeType

type NodeType = tree.NodeType

Type aliases from new packages for backward compatibility

type NodeViewState added in v1.0.2

type NodeViewState struct {
	ViewMode   ViewMode
	LogCursor  int
	PanelFocus PanelFocus
}

NodeViewState persists the view state for a specific node.

type PanelFocus

type PanelFocus int

PanelFocus represents which panel has focus.

const (
	FocusTree PanelFocus = iota
	FocusDetails
)

type ProblematicTask

type ProblematicTask = workflow.PreemptionProblematicTask

Type aliases from new packages for backward compatibility

type TreeNode

type TreeNode = tree.TreeNode

Type aliases from new packages for backward compatibility

type ViewMode

type ViewMode int

ViewMode represents the current view mode of the TUI.

const (
	ViewModeTree ViewMode = iota
	ViewModeDetails
	ViewModeCommand
	ViewModeLogs
	ViewModeInputs
	ViewModeOutputs
	ViewModeHelp
	ViewModeMonitor
)

type WorkflowMetadata

type WorkflowMetadata = workflow.Workflow

Type aliases from new packages for backward compatibility

type WorkflowPreemptionSummary

type WorkflowPreemptionSummary = workflow.PreemptionSummary

Type aliases from new packages for backward compatibility

Directories

Path Synopsis
Package tree provides tree visualization logic for workflow debugging.
Package tree provides tree visualization logic for workflow debugging.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL