# Dependency Graph

> Descriptive data about which modules, tasks or services depend on which, extracted as a directed graph.

Record: `architecture:dependency-graph`
Kind: artifact
Layer: [Causality Core](https://banes-lab.com/records/layer/causality-core.md)
Severity: mandatory
Scope: codebase, runtime, deployment
Canonical: https://banes-lab.com/ontology#architecture-dependency-graph

Listed in [Architecture principles](https://banes-lab.com/api/records/architecture.md), after [Causal Dependency](https://banes-lab.com/records/architecture/causal-dependency.md) and before [Directed Acyclic Graph (DAG)](https://banes-lab.com/records/architecture/directed-acyclic-graph.md).

## Repair

- Refactored by: Break Cycle, Invert Dependency
- Detected by: graph extraction mismatch
- Violated by: undeclared dependencies
- Measured by: cycle count, graph density
- Enforced by: dependency graph CI checks

## Requires

- [Dependency Extraction](https://banes-lab.com/records/lexicon/dependency-extraction.md)

## Reinforces

- [Architecture Compliance](https://banes-lab.com/records/lexicon/architecture-compliance.md)

## Enables

- [Cycle Detection](https://banes-lab.com/records/lexicon/cycle-detection.md)
- [Impact Analysis](https://banes-lab.com/records/architecture/impact-analysis.md)

## Conflicts with

- [Hidden Dependencies](https://banes-lab.com/records/lexicon/hidden-dependencies.md)

## In tension with

- [Dynamic Loading](https://banes-lab.com/records/lexicon/dynamic-loading.md)

## Tensions

- [Dependency Graph / Dynamic Loading](https://banes-lab.com/records/tension/dependency-graph-dynamic-loading.md)

## Severity

- [mandatory](https://banes-lab.com/records/vocabulary/severity-mandatory.md)

## Category

- [Causality / Ordering / Distributed Time](https://banes-lab.com/records/architecture-category/causality-ordering-distributed-time.md)

## Linked from

- [Orchestration as declared structure](https://banes-lab.com/pag/orchestration/declared-structure.md)
- [Keywords](https://banes-lab.com/pag/keywords/keyword-ontology.md)
- [Counting copies](https://banes-lab.com/disciplined-methodology/verify/counting-copies.md)
- [Documentation is code](https://banes-lab.com/disciplined-methodology/verify/documentation-is-code.md)
- [A system is a graph](https://banes-lab.com/software-architecture/model/a-system-is-a-graph.md)
- [The direction axis](https://banes-lab.com/software-architecture/model/the-direction-axis.md)
- [Architecture Review / Evolution / Governance Artifacts](https://banes-lab.com/ontology/principles/architecture-category-architecture-review-evolution-governance-artifacts.md)
- [Causality / Ordering / Distributed Time](https://banes-lab.com/ontology/lexicon/lexicon-category-causality-ordering-distributed-time.md)
- [Core Vocabulary](https://banes-lab.com/ontology/lexicon/lexicon-category-core-vocabulary.md)
- [Quality Attributes](https://banes-lab.com/ontology/lexicon/lexicon-category-quality-attributes.md)
- [Severity levels](https://banes-lab.com/ontology/schema/the-vocabulary-severity.md)
- [The resolutions](https://banes-lab.com/ontology/schema/the-resolutions.md)

## Evidence in the code

- [importsDiagram](https://banes-lab.com/source/tree/domain/converters/graph.converter.ts.md)
