Skip to main content

Reachability

Reachability is the focused traversal mode of DependencyAtlas. Instead of showing every visible edge in the current layer, it builds a bounded subgraph from one seed node.

Use reachability late, not first

Reachability usually works best after you already narrowed the graph with layer, path scope, or search.

What Reachability Is For

Use it when you want a local story such as:

  • what this method calls next
  • who can reach this node
  • what lies within one or two hops of a file or module
  • how a suspected dependency chain expands if you increase depth

Directions

Reachability supports three directions:

  • outgoing Good for “what does this call/use/include next?”
  • incoming Good for “who depends on or reaches this?”
  • both Good for “show me the neighborhood around this node”

Depth

Depth is bounded on purpose. That keeps the result understandable and avoids turning reachability back into “the whole graph again”.

Typical usage:

  • depth 1 Only the seed node is guaranteed to remain if there are no traversed edges yet
  • depth 2 One hop out from the seed
  • depth 3+ Useful once you already know the path is narrow enough to stay readable

How Reachability Differs From the Visible Graph

Reachability is not a new analysis pass. It runs on top of the already filtered graph selection:

  • current layer still matters
  • edge kind filters still matter
  • path scope filters still matter
  • stdlib/external toggles still matter

So if you exclude part of the graph before entering reachability mode, that excluded area will not suddenly come back.

Seed nodes have explicit query-context meaning

Reachability results now carry node_appearance, so the seed node is explicitly marked with reachability_seed even when no edge is traversed yet.

Practical Workflow

  1. Narrow the graph first with layer, search, or path scope.
  2. Select the node you care about.
  3. Switch reachability on.
  4. Start with small depth.
  5. Increase depth only if the current neighborhood is still interpretable.

Exiting Reachability

Reachability no longer exits when you click blank canvas space. That avoids accidental exits while you are inspecting the local subgraph.

To leave reachability mode, right-click a node and choose Exit Reachability Mode from the node context menu.

Keeping Context

Reachability is best when it answers one bounded question. If the result becomes too large, step back:

  • reduce depth
  • switch to file/module view
  • narrow search or path scope first

That usually gives a cleaner answer than forcing a large reachability subgraph.

  • Need to choose the right layer before using reachability? See Graph Views.
  • Need the exact payload shape of reachability responses? See Reference / Protocol.