Expand description
Typed analysis engine boundary for fallow consumers.
fallow-core remains the internal orchestration backend. This crate owns
the typed boundary that editor, API, and embedding surfaces can depend on
without calling deprecated core entry points directly. Public modules should
expose owned engine runners, typed result structs, or narrowly scoped aliases
instead of broad core re-exports.
Re-exports§
pub use results::DeadCodeAnalysis;pub use results::DeadCodeAnalysisArtifacts;pub use results::DeadCodeAnalysisOutput;pub use results::DeadCodeAnalysisWithHashes;pub use results::DuplicationAnalysis;pub use results::HealthAnalysisResult;pub use results::ProjectAnalysisOutput;
Modules§
- baseline
- codeowners
- CODEOWNERS file parser and ownership lookup.
- health_
ownership - Ownership risk analysis for hotspot files.
- health_
scoring - results
- Analysis result types exposed through the engine boundary.
- validate
- vital_
signs - Vital signs computation and snapshot persistence.
Structs§
- Aggregated
Plugin Result - Aggregated results from all active plugins for a project.
- Analysis
Discovery - Reusable engine discovery prelude for one resolved project.
- Analysis
Session - Reusable engine session for one resolved project.
- Analysis
Session Artifacts - Reusable artifacts produced by one session-owned dead-code run.
- Author
Contribution - Per-author commit aggregation for a single file.
- Categorized
Entry Points - Entry points grouped by reachability role.
- Churn
Result - Result of churn analysis.
- Clone
Fingerprint Set - Report-scoped clone fingerprint assignment exposed through the engine boundary.
- Combined
Finding - A combined finding where a clone instance overlaps with a dead-code issue.
- Complexity
RunOptions - Normalized programmatic complexity / health inputs shared by API, NAPI, and engine-backed runners.
- Complexity
Section Options - Input for deriving effective programmatic complexity sections.
- Coordination
GapPaths - Engine-owned coordination gap between a changed contract and consumer.
- Cross
Reference Result - Result of cross-referencing duplication with dead-code analysis.
- Derived
Complexity Options - Derived section selection for programmatic health / complexity runs.
- Derived
Health Sections - Derived section selection for health runs.
- Direct
Importer Summary - Engine-owned importer details for one file that directly imports a target module.
- Discovered
File - A discovered source file on disk.
- Engine
Error - Error type exposed by the typed engine boundary.
- Entry
Point - An entry point into the module graph.
- Feature
Flags Analysis - Typed result from running feature flag analysis.
- File
Churn - Per-file churn data collected from git history.
- FileId
- Compact file identifier.
- Focus
File Facts Paths - Engine-owned focus facts for one changed file.
- Health
Coverage Inputs - Command-neutral Istanbul coverage inputs for health CRAP scoring.
- Health
Execution Options - Command-neutral inputs needed to execute a health analysis.
- Health
Gate Options - Command-neutral health exit gate options.
- Health
Pipeline Inputs - Discovery / parse inputs the CLI resolves before calling the engine.
- Health
RunOptions - Normalized health inputs shared by CLI, API, NAPI, and future runners.
- Health
RunOptions Input - Command-neutral inputs used to normalize a health run before it reaches a concrete runner.
- Health
Scope Inputs - Scope inputs the CLI resolves before calling the engine.
- Health
Seams - CLI-supplied callbacks the command-neutral health pipeline needs.
- Health
Section Options - Input for deriving effective health sections from command-neutral flags.
- Health
Shared Parse Data - Pre-parsed health input reused from another analysis in the same process.
- Health
Threshold Overrides - Command-neutral threshold overrides for health complexity findings.
- Hidden
DirScope - Package-scoped hidden directories that source discovery should traverse.
- Impact
Closure Paths - Engine-owned impact closure with file ids resolved to paths.
- Imported
Symbol Summary - Engine-owned symbol details for a direct import edge.
- Inventory
Complexity - Per-function static complexity collected alongside the inventory walk.
- Inventory
Entry - A single static-inventory entry for one function.
- Module
Value Export - Engine-owned snapshot of one value export in a module graph.
- Partition
Order Paths - Engine-owned review partition and dependency-sensible order.
- Plugin
Regex Validation Error - Invalid user-authored regex extracted from a plugin config file.
- Plugin
Registry - Registry of all available plugins.
- Project
Config - Resolved project config plus the config file path when one was loaded.
- Project
Config Options - Scalar config-loading knobs for one analysis family.
- Retained
Module Graph - Engine-owned retained graph handle.
- Review
Unit Paths - Engine-owned changed-file review unit.
- Runtime
Coverage Options - Command-neutral runtime coverage input for health analysis.
- Runtime
Coverage Seam Input - Inputs the runtime coverage seam needs from the analysis core.
- Since
Duration - Parsed duration for the
--sinceflag. - Suppression
- A suppression directive parsed from a source comment.
Enums§
- Changed
Files Error - Classification of a changed-file git failure.
- Churn
Trend - Churn trend indicator based on comparing recent vs older halves of the analysis period.
- Dead
Code Kind - The type of dead code that overlaps with a clone instance.
- Entry
Point Source - Where an entry point was discovered from.
- Health
Sort - Command-neutral sort criteria for health complexity findings.
- Issue
Kind - Issue kind for suppression matching.
Constants§
- AMBIENT_
GIT_ ENV_ VARS - Environment variables that describe an enclosing git operation’s repository state and should not leak into fallow-owned git subprocesses.
- FINGERPRINT_
PREFIX - PRODUCTION_
EXCLUDE_ PATTERNS - SOURCE_
EXTENSIONS
Traits§
- Health
Group Resolver - Command-neutral grouping resolver contract for
--group-byhealth output.
Functions§
- analyze
- Run dead-code analysis for a resolved config.
- analyze_
churn - Analyze git churn for files under
root. - analyze_
churn_ cached - Analyze churn with disk caching.
- analyze_
feature_ flags - Run feature flag analysis for a resolved project config.
- analyze_
retaining_ modules - Run dead-code analysis while retaining module and file artifacts.
- analyze_
with_ file_ hashes - Run dead-code analysis with source hashes for drift-sensitive fixers.
- analyze_
with_ parse_ result - Run dead-code analysis from pre-parsed modules.
- analyze_
with_ trace - Run dead-code analysis with trace timings and retained graph artifacts.
- analyze_
with_ usages - Run dead-code analysis with export usage collection for a resolved config.
- analyze_
with_ usages_ and_ complexity - Run dead-code analysis with export usage and retained complexity artifacts.
- builtin_
env_ prefixes - Built-in environment variable prefixes treated as feature flags.
- builtin_
plugin_ names - Names of every built-in framework plugin in registry order.
- builtin_
sdk_ providers - Distinct built-in SDK provider labels, in declaration order.
- changed_
files - Resolve changed files for a git ref relative to a project root.
- clear_
ambient_ git_ env - Strip ambient git repository-state environment variables from a
Command. - clone_
fingerprint - Compute the stable fingerprint for a clone group.
- collect_
plugin_ hidden_ dir_ scopes - Collect plugin-derived hidden directory scopes.
- config_
for_ project - Resolve the analysis config for a project.
- config_
for_ project_ analysis - Resolve config for a specific analysis without depending on the CLI crate.
- cross_
reference - Cross-reference duplication findings with dead-code analysis results.
- derive_
complexity_ sections - Derive effective programmatic health / complexity section flags.
- derive_
health_ run_ options - Normalize health run inputs into the engine-owned run contract.
- derive_
health_ sections - Derive effective health section flags for CLI and embedders.
- derive_
security_ severity - Derive the review-priority severity for a security candidate.
- discover_
entry_ points - Discover configured and inferred entry points.
- discover_
files - Discover source files for a resolved config.
- discover_
files_ with_ additional_ hidden_ dirs - Discover source files with additional package-scoped hidden directories.
- discover_
files_ with_ plugin_ scopes - Discover source files for a resolved config, including plugin scopes.
- discover_
plugin_ entry_ points - Discover entry points from plugin results.
- discover_
workspace_ entry_ points - Discover entry points for a workspace package.
- dominant_
identifier - Return the best-effort dominant identifier for a clone group.
- emit_
error - Emit an error as structured JSON on stdout when
--format jsonis active, then return the given exit code. For non-JSON formats, emit to stderr as usual. - execute_
health_ inner - Run the command-neutral health analysis pipeline.
- export_
lines_ for_ changed_ paths - Compute changed-file export line anchors without exposing graph nodes.
- filter_
by_ changed_ files - Scope dead-code results to findings affected by changed files.
- filter_
duplication_ by_ changed_ files - Scope duplication groups to clone groups touching at least one changed file.
- filter_
results_ by_ changed_ files - Scope dead-code results to findings affected by changed files.
- filter_
to_ workspaces - Scope dead-code results to the union of the given workspace roots.
- find_
duplicates - Run duplication detection on a discovered file set.
- find_
duplicates_ touching_ files_ with_ defaults - Run focused duplication detection and include metadata about built-in ignored files.
- find_
duplicates_ with_ defaults - Run duplication detection and include metadata about built-in ignored files.
- fingerprint_
for_ fragment - Compute a clone fingerprint directly from a representative source fragment.
- focus_
facts_ for_ changed_ paths - Compute path-resolved focus graph facts for absolute changed paths.
- format_
plugin_ regex_ errors - Format plugin regex validation errors for user-facing diagnostics.
- get_
changed_ files - Get changed files if git can resolve them, otherwise return
None. - health_
shared_ parse_ data_ from_ artifacts - Build health shared parse data from retained dead-code artifacts.
- impact_
closure_ for_ changed_ paths - Compute a path-resolved impact closure for absolute changed paths.
- internal_
consumers_ for_ changed_ paths - Compute direct non-diff internal consumer counts for absolute changed paths.
- is_
allowed_ hidden_ dir - Check if a hidden directory name is on the discovery allowlist.
- is_
file_ suppressed - Check if the entire file is suppressed for issue types that do not have line numbers.
- is_
git_ repo - Check whether
rootis inside a git repository. - is_
suppressed - Check if a specific issue at a given line should be suppressed.
- module_
value_ exports - Return value exports with test-reference state without exposing graph node internals to downstream crates.
- parse_
since - Parse a
--sincevalue into a git-compatible duration. - partition_
order_ for_ changed_ paths - Compute path-resolved partition order for absolute changed paths.
- public_
api_ package_ entry_ points - Compute the exports-aware public API entry-point set for a project graph.
- recompute_
stats - Recompute duplication statistics after clone groups have been filtered.
- refresh_
clone_ families - Refresh clone-family and mirrored-directory fields after clone groups change.
- resolve_
cache_ max_ size_ bytes - Resolve the parse-cache size limit for a resolved config.
- resolve_
git_ common_ dir - Resolve the canonical git common directory for
cwd. - resolve_
git_ toplevel - Resolve the canonical git toplevel for
cwd. - run_
ungrouped_ health - Run health analysis without a presentation grouping resolver.
- security_
catalogue_ title - Return the human-readable title for a security catalogue identifier.
- set_
churn_ spawn_ hook - Install a spawn hook for git churn analysis.
- set_
spawn_ hook - Install a spawn-hook for changed-file git subprocesses.
- source_
token_ kinds_ equivalent - Compare two JS/TS sources by duplicate-token kind sequence.
- trace_
clone - Trace duplicate-code groups that contain a source location.
- trace_
clone_ by_ fingerprint - Trace a duplicate-code group by its stable content fingerprint.
- trace_
dependency - Trace where a dependency is used.
- trace_
export - Trace why an export is considered used or unused.
- trace_
file - Trace all graph edges for a file.
- trace_
impact_ closure - Trace the impact closure for a file.
- trace_
symbol_ chain - Run symbol-level call-chain tracing through the engine boundary.
- try_
get_ changed_ diff - Return the raw git diff for a ref.
- try_
get_ changed_ files - Get files changed since a git ref.
- try_
get_ changed_ files_ with_ toplevel - Get changed files and the git toplevel used to resolve them.
- validate_
coverage_ root_ absolute - Validate that a coverage-data root is absolute under Unix or Windows path conventions.
- validate_
git_ ref - Validate a user-supplied git ref before passing it to git.
- validate_
health_ churn_ file - Validate an explicit
--churn-fileup front so a malformed import is a loud hard error rather than a silent hotspot skip. Runs before the pipeline, and only when churn would actually be consumed (--hotspots/--targets;--ownershipis subsumed because the dispatch layer setshotspots = hotspots || ownershipbefore buildingHealthExecutionOptions), so an inert--churn-fileon a non-churn run is not penalized. - walk_
source - Walk source and emit engine-owned function inventory entries.
- walk_
source_ with_ complexity - Walk source once and emit inventory entries plus static complexity by source hash.