Skip to content

[Feature Request] Improve callback graph #1176

@jjaraalm

Description

@jjaraalm

Right now the callback graph is somewhat useful for identifying logical flow issues, but I think it could be greatly improved if it could be dynamic rather than static.

Possible improvements

  • Zoom in/out functionality for large/complex callback chains
  • Callback graph accessible from a dedicated url (maybe this already exists?) in addition to an overlay so that you can do test interactions while examining the callback graph
  • Distinguish between clientside and serverside callbacks using different node colors.
  • Report profiling information
    • Number of times a callback was invoked per node
    • Time spent (total or average) in the callback. Maybe link to the node color?
    • Label each edge with the number of times that input triggered a callback
  • Live debugging
    • Highlight currently executing callbacks and modified outputs
    • Probe the last input/output by hovering/focusing an edge

For live debugging, I'm thinking something similar to the Labview execution highlighting if you've ever used it. When you turn on debugging mode, callbacks intentionally get a delay injected into them to slow everything down so you can visually watch and inspect the logical flow. Like this:

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions