enolaDocsCore concepts

Documentation

Core concepts

The terms used in Enola commands, reports, and configuration.

01 · Model

Facts, relations, and snapshots

TermMeaning
FactA typed item extracted from the repository, such as a module, symbol, route, or table.
RelationA directed connection between facts, such as imports, calls, or depends_on.
SnapshotThe graph and metadata produced by one analysis run.
ProducerAn extractor or provider that contributed facts to a snapshot.

02 · Comparison

Baselines, deltas, and findings

TermMeaning
BaselineThe pinned before snapshot used by enola check.
DeltaFacts, relations, and findings added or removed since the baseline.
FindingA reported condition such as a dependency cycle, layer violation, or complexity outlier.
PolicyThe finding categories selected with --fail-on. Only selected categories can fail a check.

03 · Rules

Intent and constraints

TermMeaning
IntentA declaration of expected architecture: service seams, layer order, or intended external dependencies.
ComponentA named set of graph facts selected by path, kind, name pattern, repository (service), or measured properties (where).
ConstraintA rule that allows or forbids a relationship between components.
ExemptionA named, visible exception for a specific violation.

Intent and constraints are declarations. Enola evaluates them against extracted facts; it does not infer them from prose or commit messages.

04 · Evidence

Receipts and coverage

TermMeaning
ReceiptMetadata describing the repository, Enola version, producers, configuration, git state, and fact counts for a snapshot.
CoverageWhat the active extractors resolved, plus unresolved calls or cross-repository edges.
ComparableTwo snapshots that can be safely diffed because their identity-affecting settings match.
Partial verdictA result graded only over facts shared by both producer sets. Excluded producers and facts are listed.

05 · Example

One change through the model

A new import creates a relation between two module facts. The current snapshot contains that relation; the baseline does not. The delta therefore contains one added relation. If that relation crosses a declared layer boundary, Enola also creates a finding. The finding fails the check only when its category is selected by policy.