summaryrefslogtreecommitdiff
path: root/internal/flamegraph
AgeCommit message (Collapse)Author
2026-05-27ap: refactor livetrie mutex unlocks to defer patternsPaul Buetow
2026-05-27flamegraph: reduce AddRecord lock contention (6p)Paul Buetow
2026-05-27flamegraph: guard SnapshotJSON cache writes (5p)Paul Buetow
2026-05-27fix(flamegraph): lock metric field reads in AddRecord (1p)Paul Buetow
2026-05-26test: add xo coverage for dual metrics and variable-height flamegraphPaul Buetow
2026-05-26flamegraph: add LiveTrie height metric ingestion (task qo)Paul Buetow
2026-05-26flamegraph: add dual trie value/height totals (task po)Paul Buetow
2026-05-13fix ignored file.Close error in iordata serialization error pathPaul Buetow
On serialization failure the deferred close was called but its error silently discarded, potentially masking filesystem issues such as a full-disk condition detected only at close time. Capture the close error and join it with the existing retErr via errors.Join so callers see the full picture. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-11speed up flame graph TUI under heavy event loadPaul Buetow
Move the per-tick snapshot refresh off the Bubble Tea update goroutine, add a frame ancestry index so navigation and filter helpers run in O(subtree) instead of O(frames), skip refresh and animation while the user is actively pressing keys, and memoize View() output. Keystrokes (pause, filter, navigate) now land within one frame even when the live trie ingests thousands of events per tick. - new SnapshotTree() on LiveTrie bypasses JSON marshal+unmarshal - RefreshFromLiveTrieCmd runs SnapshotTree + layout + ancestry on a background goroutine, coalesced via refreshInFlight, and returns a flameSnapshotReadyMsg the Update loop applies cheaply - driveWindow gate (250 ms after last key press) skips refresh dispatch and snaps frames directly to target without animation while the user is driving - View() caches its rendered string keyed on the inputs that affect output; cache is bypassed during animation Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-03-18cleanupPaul Buetow
2026-03-12fix: restore legacy flamegraph trace output modePaul Buetow
2026-03-10task 436: handle loadFromFile close errorsPaul Buetow
2026-03-10task 433: lock in pair recycle safetyPaul Buetow
2026-03-06refactor: remove legacy iordata path map fallback (task 384)Paul Buetow
2026-03-06refactor: make livetrie caller-owned for pair recycling (task 382)Paul Buetow
2026-03-06refactor: share trie insertion path logic (task 382)Paul Buetow
2026-03-06fix: return errors for unknown counter fields (task 383)Paul Buetow
2026-03-06refactor: share collapse field validation lists (task 387)Paul Buetow
2026-03-06fix: return serialize errors instead of panicking (task 383)Paul Buetow
2026-03-06refactor: remove web flamegrapher and keep TUI-onlyPaul Buetow
2026-03-06feat(tui): add flamegraph bytes metric togglePaul Buetow
2026-03-06flamegraph: make esc undo one zoom level and aggregate syscalls by defaultPaul Buetow
2026-03-06Fix real live flamegraph key handling and startup viewport syncPaul Buetow
2026-03-06Add live flamegraph test modes and dynamic synthetic live feedPaul Buetow
2026-03-05Normalize Go import grouping with local ior sectionPaul Buetow
2026-03-05Add package-level docs across internal packagesPaul Buetow
2026-03-04Fix Go mistake findings and stabilize integration timingPaul Buetow
2026-03-03Add watch mode for dynamic flamegraph updatesPaul Buetow
2026-03-03Extract renderer-agnostic flamegraph layoutPaul Buetow
2026-03-03Add WASM-ready flamegraph JSON exportPaul Buetow
2026-03-02Launch live browser opener as invoking sudo userPaul Buetow
2026-03-02Make --open a command template with no defaultsPaul Buetow
2026-03-02Add --open support for live flamegraph browser launchPaul Buetow
2026-03-02Add HTTP timeouts for flamegraph web serversPaul Buetow
2026-03-01Thread runtime config instead of global flags readsPaul Buetow
2026-03-01Route non-fatal event-loop warnings to TUIPaul Buetow
2026-03-01flamegraph: share HTTP server lifecycle helper (task 316)Paul Buetow
2026-02-27flamegraph: default live update interval to 200msPaul Buetow
2026-02-27flamegraph: add live field-order toggle and reconfigure APIPaul Buetow
2026-02-27flags: change default flamegraph order to comm-firstPaul Buetow
2026-02-27flamegraph: fill live viewport width and tighten reset hotkeyPaul Buetow
2026-02-27flamegraph: scale live view to viewport heightPaul Buetow
2026-02-27flamegraph: add live baseline reset hotkeyPaul Buetow
2026-02-27internal: validate live CLI mode behaviorPaul Buetow
2026-02-27flamegraph: test pause/keyboard live interactionsPaul Buetow
2026-02-27flamegraph: preserve zoom/search state across updatesPaul Buetow
2026-02-27flamegraph: add browser rendering parity QA testPaul Buetow
2026-02-27flamegraph: add SSE edge-case QA testsPaul Buetow
2026-02-27flamegraph: add opt-in live trie stress QA testPaul Buetow
2026-02-27flamegraph: add live interaction controlsPaul Buetow