Skip to content

get_cross_project_dependents

Traverse the full downstream dependency graph of a context using breadth-first search — across all projects.

Overview

The get_cross_project_dependents tool returns every context that was directly or indirectly caused by a given context, regardless of which project it belongs to. It follows caused_by links forward in time using BFS, making it possible to map the full ripple effect of a decision across your entire knowledge graph.

Layer: Layer 1 (Causality Engine)

Purpose: Map the complete downstream impact of a context across project boundaries


Parameters

ParameterTypeRequiredDescription
contextIdstringYesUUID of the root context to trace from

Returns

Formatted text listing all downstream dependents in BFS order (breadth-first, level by level):

Downstream dependents of "550e8400-e29b-41d4-a716-446655440000":

Found 4 dependent context(s):

Level 1 (direct children):
  **api-service** — 2025-10-18T09:00:00Z
  Chose REST over GraphQL based on authentication architecture decision
  Tags: rest, api, architecture, decision

  **mobile-app** — 2025-10-18T09:15:00Z
  Updated mobile auth flow to align with new REST API structure
  Tags: mobile, auth, rest, refactor

Level 2 (grandchildren):
  **api-service** — 2025-10-18T11:30:00Z
  Implemented JWT middleware for REST endpoints
  Tags: jwt, middleware, rest, implementation

  **docs-site** — 2025-10-18T12:00:00Z
  Updated API documentation to reflect REST architecture
  Tags: docs, rest, api, update

If no dependents exist:

No downstream dependents found for "550e8400-e29b-41d4-a716-446655440000".

Examples

Trace a Decision's Impact

typescript
get_cross_project_dependents({
  contextId: "550e8400-e29b-41d4-a716-446655440000"
})

Audit Before Changing an Architecture Decision

Before revising a foundational context, see what it influenced:

typescript
// Find the original decision
const results = search_context({ query: "REST API architecture decision" });
// → "550e8400-e29b-41d4-a716-446655440000"

// Trace all downstream impact
get_cross_project_dependents({ contextId: "550e8400-e29b-41d4-a716-446655440000" });

How BFS Traversal Works

The tool uses breadth-first search to follow caused_by links:

Root context
├── Direct child A (Level 1)
│   ├── Grandchild A1 (Level 2)
│   └── Grandchild A2 (Level 2)
└── Direct child B (Level 1)
    └── Grandchild B1 (Level 2)

Cycle guard: The BFS maintains a visited set to prevent infinite loops if circular causality exists in your data. Each context ID is visited at most once.

Cross-project: Unlike build_causal_chain (which goes backward) and is scoped to one project, get_cross_project_dependents goes forward and crosses project boundaries, making it the right tool for impact analysis.


ToolDirectionScopePurpose
build_causal_chainBackward (ancestry)Single project"What led to this?"
reconstruct_reasoningBackward (WHY)Single context"Why was this created?"
get_cross_project_dependentsForward (descendants)All projects"What did this cause?"

Use Cases

1. Impact Analysis Before Deletion

Before pruning or changing a context, see what downstream contexts depend on it.

2. Audit Decision Ripples

After a major architecture decision, see how far its influence has spread across projects.

3. Documentation Consistency

Find all documentation contexts that reference an API decision, to update them consistently.

4. Knowledge Graph Exploration

Explore the full dependency graph from a root decision to understand the complete causal history of your system.


Setting Up Cross-Project Causality

To use this tool effectively, save contexts with crossProject: true when a decision spans project boundaries:

typescript
save_context({
  project: "architecture-decisions",
  content: "Decided to use REST for all new services.",
  crossProject: true,
  metadata: {
    actionType: "decision",
    causedBy: "prior-context-id"
  }
});

With crossProject: true, Layer 1 searches the entire context graph (not just the current project) when detecting dependencies.


See Also