Skip to content

Add call stack breadcrumb and call info panel#189

Merged
gnidan merged 4 commits intocall-returnfrom
ui-call-context-display
Mar 11, 2026
Merged

Add call stack breadcrumb and call info panel#189
gnidan merged 4 commits intocall-returnfrom
ui-call-context-display

Conversation

@gnidan
Copy link
Member

@gnidan gnidan commented Mar 11, 2026

Summary

  • Adds CallStackDisplay breadcrumb component showing nested call frames (clickable to jump to invoke step)
  • Adds CallInfoPanel component with colored banners (invoke=blue, return=green, revert=red) and async-resolved pointer ref values
  • Extends TraceProvider with callStack and currentCallInfo state derived from invoke/return/revert contexts
  • New utilities: extractCallInfoFromInstruction, buildCallStack, buildPcToInstructionMap

@github-actions
Copy link
Contributor

github-actions bot commented Mar 11, 2026

PR Preview Action v1.8.1
Preview removed because the pull request was closed.
2026-03-11 09:25 UTC

@gnidan gnidan force-pushed the ui-call-context-display branch from 87e1226 to 09be8e0 Compare March 11, 2026 08:38
gnidan added 3 commits March 11, 2026 05:10
Surface invoke/return/revert context information in the
trace viewer: a breadcrumb showing the current call stack,
and a panel showing call details with async-resolved
pointer ref values.

New components: CallStackDisplay, CallInfoPanel
New utilities: extractCallInfoFromInstruction, buildCallStack,
  buildPcToInstructionMap
New types: CallInfo, CallFrame, ResolvedCallInfo,
  ResolvedPointerRef
The components were exported from programs-react but never
rendered in the web package's TraceViewer. Add them to the
layout: call stack breadcrumb in the header, call info
panel at the top of the right sidebar.
The deploy preview uses TraceDrawer (not TraceViewer) for the
interactive trace playground. Add call context display directly
to TraceDrawer: a breadcrumb bar showing nested call frames
with clickable navigation, and a colored banner showing
invoke/return/revert status at the current step.
@gnidan gnidan force-pushed the ui-call-context-display branch from a8cc456 to 9ac5703 Compare March 11, 2026 09:10
- Call stack bar now always visible with "(top level)" empty
  state so users know the feature exists
- Fix duplicate call stack frames: compiler emits invoke
  context on both the caller JUMP and callee entry JUMPDEST,
  so skip push if top frame already matches the same call
- Applied fix to both TraceDrawer and programs-react utility
@gnidan gnidan merged commit 9cf00f4 into call-return Mar 11, 2026
4 checks passed
@gnidan gnidan deleted the ui-call-context-display branch March 11, 2026 09:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant