diff options
| author | Paul Buetow <paul@buetow.org> | 2026-03-18 20:54:35 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-03-18 20:54:35 +0200 |
| commit | cd554b0af706b5f62b4e1bfde04091052b4aac61 (patch) | |
| tree | e6d02f1c2a1da27da17386e8832c2d4a3e699cdf /docs/tui-flamegraph-behavior.md | |
| parent | b421b2232351049277ee4ad5b31367bb2b6779bb (diff) | |
cleanup
Diffstat (limited to 'docs/tui-flamegraph-behavior.md')
| -rw-r--r-- | docs/tui-flamegraph-behavior.md | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/docs/tui-flamegraph-behavior.md b/docs/tui-flamegraph-behavior.md deleted file mode 100644 index cc9bb5d..0000000 --- a/docs/tui-flamegraph-behavior.md +++ /dev/null @@ -1,46 +0,0 @@ -# TUI Flamegraph Expected Behavior - -This document records the expected interaction and layout behavior for the TUI -flamegraph. It is intended as a stable reference for regressions and for tests -under `internal/tui/flamegraph/` and `internal/tui/dashboard/`. - -## Interaction - -- `space` toggles pause. `p` does not pause the flamegraph and remains reserved - for the global PID picker at the top-level TUI. -- `enter` and left-click zoom into the selected or clicked frame. -- Clicking an ancestor frame in the zoom lineage re-roots the view to that - ancestor. -- `u`, `backspace`, and `esc` undo one zoom step. -- Direct clicks into a deep descendant create a single undo step back to the - previous zoom root, not an implicit stack of every skipped ancestor. -- While paused, navigation and zoom must continue to work against the frozen - snapshot. - -## Layout - -- The selected frame must not render with underline or a horizontal highlight - line across the bar. -- The current zoom root must span the full flamegraph width. -- The children of the current zoom root must be normalized to the full viewport - width, even when the zoom root has self time or exclusive weight. -- Zooming from any direction must produce the same full-width result for the - newly selected zoom root. -- The zoom lineage rows shown above the zoomed subtree provide context, but they - must not steal horizontal space from the zoomed subtree. - -## Rendering - -- Rendering the dashboard view must not mutate persistent flamegraph state. -- Redundant same-size viewport updates must be no-ops. -- In paused mode, repeated renders must not reintroduce stale frame geometry or - leave artifacts from a previous layout on screen. - -## Regression Coverage - -These expectations are covered by tests in: - -- `internal/tui/flamegraph/renderer_test.go` -- `internal/tui/flamegraph/model_test.go` -- `internal/tui/flamegraph/stress_test.go` -- `internal/tui/dashboard/model_test.go` |
