Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
codefang
command
Package main provides the entry point for the codefang CLI tool.
|
Package main provides the entry point for the codefang CLI tool. |
|
codefang/commands
Package commands implements CLI command handlers for codefang.
|
Package commands implements CLI command handlers for codefang. |
|
uast
command
Package main provides the UAST CLI entry point.
|
Package main provides the UAST CLI entry point. |
|
Package main demonstrates custom UAST mapping usage.
|
Package main demonstrates custom UAST mapping usage. |
|
internal
|
|
|
analyzers/analyze
Package analyze provides analyze functionality.
|
Package analyze provides analyze functionality. |
|
analyzers/anomaly
Package anomaly provides temporal anomaly detection over commit history.
|
Package anomaly provides temporal anomaly detection over commit history. |
|
analyzers/burndown
Package burndown provides burndown functionality.
|
Package burndown provides burndown functionality. |
|
analyzers/clones
Package clones provides clone detection analysis using MinHash and LSH.
|
Package clones provides clone detection analysis using MinHash and LSH. |
|
analyzers/cohesion
Package cohesion provides cohesion functionality.
|
Package cohesion provides cohesion functionality. |
|
analyzers/comments
Package comments provides comments functionality.
|
Package comments provides comments functionality. |
|
analyzers/common
Package common provides common functionality.
|
Package common provides common functionality. |
|
analyzers/common/plotpage
Package plotpage provides HTML visualization components for analyzer output.
|
Package plotpage provides HTML visualization components for analyzer output. |
|
analyzers/common/renderer
Package renderer provides section rendering for analyzer reports.
|
Package renderer provides section rendering for analyzer reports. |
|
analyzers/common/reportutil
Package reportutil provides type-safe accessors for map[string]any fields.
|
Package reportutil provides type-safe accessors for map[string]any fields. |
|
analyzers/common/spillstore
Package spillstore provides generic disk-backed stores that spill accumulated data to temporary files during streaming hibernation, freeing memory between chunks while preserving the full dataset for Finalize.
|
Package spillstore provides generic disk-backed stores that spill accumulated data to temporary files during streaming hibernation, freeing memory between chunks while preserving the full dataset for Finalize. |
|
analyzers/common/terminal
Package terminal provides terminal rendering utilities for beautiful CLI output.
|
Package terminal provides terminal rendering utilities for beautiful CLI output. |
|
analyzers/complexity
Package complexity provides complexity functionality.
|
Package complexity provides complexity functionality. |
|
analyzers/couples
Package couples provides couples functionality.
|
Package couples provides couples functionality. |
|
analyzers/devs
Package devs provides devs functionality.
|
Package devs provides devs functionality. |
|
analyzers/file_history
Package filehistory provides file history functionality.
|
Package filehistory provides file history functionality. |
|
analyzers/halstead
Package halstead provides halstead functionality.
|
Package halstead provides halstead functionality. |
|
analyzers/imports
Package imports provides imports functionality.
|
Package imports provides imports functionality. |
|
analyzers/plumbing
Package plumbing provides plumbing functionality.
|
Package plumbing provides plumbing functionality. |
|
analyzers/quality
Package quality tracks code quality metrics (complexity, Halstead, comments, cohesion) across commit history by running static analyzers on per-commit UAST-parsed changed files.
|
Package quality tracks code quality metrics (complexity, Halstead, comments, cohesion) across commit history by running static analyzers on per-commit UAST-parsed changed files. |
|
analyzers/sentiment
Package sentiment provides sentiment functionality.
|
Package sentiment provides sentiment functionality. |
|
analyzers/sentiment/lexicons
Package lexicons provides multilingual sentiment dictionaries for code comment analysis.
|
Package lexicons provides multilingual sentiment dictionaries for code comment analysis. |
|
analyzers/shotness
Package shotness provides shotness functionality.
|
Package shotness provides shotness functionality. |
|
analyzers/typos
Package typos provides typos functionality.
|
Package typos provides typos functionality. |
|
budget
Package budget provides memory budget calculation and auto-tuning for codefang history analysis.
|
Package budget provides memory budget calculation and auto-tuning for codefang history analysis. |
|
burndown
Package burndown provides file-level line interval tracking for burndown analysis.
|
Package burndown provides file-level line interval tracking for burndown analysis. |
|
cache
Package cache provides LRU blob caching with Bloom pre-filter and cost-based eviction.
|
Package cache provides LRU blob caching with Bloom pre-filter and cost-based eviction. |
|
checkpoint
Package checkpoint provides state persistence for streaming analysis.
|
Package checkpoint provides state persistence for streaming analysis. |
|
config
Package config provides YAML-based project configuration for codefang.
|
Package config provides YAML-based project configuration for codefang. |
|
framework
Package framework provides orchestration for running analysis pipelines.
|
Package framework provides orchestration for running analysis pipelines. |
|
identity
Package identity provides identity constants and types for author tracking.
|
Package identity provides identity constants and types for author tracking. |
|
importmodel
Package importmodel defines the data model for source file import analysis.
|
Package importmodel defines the data model for source file import analysis. |
|
observability
Package observability provides OpenTelemetry-based tracing, metrics, and structured logging for all Codefang application modes (CLI, MCP, server).
|
Package observability provides OpenTelemetry-based tracing, metrics, and structured logging for all Codefang application modes (CLI, MCP, server). |
|
plumbing
Package plumbing defines shared types, constants, and test helpers for the analysis pipeline.
|
Package plumbing defines shared types, constants, and test helpers for the analysis pipeline. |
|
storage
Package storage provides filesystem utilities for safe, atomic persistence.
|
Package storage provides filesystem utilities for safe, atomic persistence. |
|
streaming
Package streaming provides chunked execution with analyzer hibernation for memory-bounded analysis.
|
Package streaming provides chunked execution with analyzer hibernation for memory-bounded analysis. |
|
pkg
|
|
|
alg
Package alg provides generic algorithm utilities.
|
Package alg provides generic algorithm utilities. |
|
alg/bloom
Package bloom provides a space-efficient probabilistic set membership filter.
|
Package bloom provides a space-efficient probabilistic set membership filter. |
|
alg/cms
Package cms provides a Count-Min Sketch for frequency estimation.
|
Package cms provides a Count-Min Sketch for frequency estimation. |
|
alg/hll
Package hll provides a HyperLogLog cardinality estimator.
|
Package hll provides a HyperLogLog cardinality estimator. |
|
alg/internal/hashutil
Package hashutil provides shared hash mixing constants and functions for probabilistic data structures (Count-Min Sketch, HyperLogLog, MinHash).
|
Package hashutil provides shared hash mixing constants and functions for probabilistic data structures (Count-Min Sketch, HyperLogLog, MinHash). |
|
alg/interval
Package interval provides an augmented interval tree for efficient range-overlap queries.
|
Package interval provides an augmented interval tree for efficient range-overlap queries. |
|
alg/levenshtein
Package levenshtein calculates the Levenshtein edit distance between strings.
|
Package levenshtein calculates the Levenshtein edit distance between strings. |
|
alg/lru
Package lru provides a generic thread-safe LRU cache with optional Bloom pre-filtering, size-based eviction, and cost-aware eviction sampling.
|
Package lru provides a generic thread-safe LRU cache with optional Bloom pre-filtering, size-based eviction, and cost-aware eviction sampling. |
|
alg/lsh
Package lsh provides a Locality-Sensitive Hashing index for fast approximate nearest-neighbor retrieval of MinHash signatures.
|
Package lsh provides a Locality-Sensitive Hashing index for fast approximate nearest-neighbor retrieval of MinHash signatures. |
|
alg/mapx
Package mapx provides generic map operations: clone, merge, and sorted-key extraction.
|
Package mapx provides generic map operations: clone, merge, and sorted-key extraction. |
|
alg/minhash
Package minhash provides MinHash signature generation for set similarity estimation.
|
Package minhash provides MinHash signature generation for set similarity estimation. |
|
alg/stats
Package stats provides core statistical functions for numerical analysis.
|
Package stats provides core statistical functions for numerical analysis. |
|
gitlib
Package gitlib provides a unified interface for git operations using libgit2.
|
Package gitlib provides a unified interface for git operations using libgit2. |
|
iosafety
Package iosafety provides defensive file-reading and terminal-output utilities for user-supplied paths and strings.
|
Package iosafety provides defensive file-reading and terminal-output utilities for user-supplied paths and strings. |
|
meminfo
Package meminfo provides memory information utilities.
|
Package meminfo provides memory information utilities. |
|
metrics
Package metrics provides interfaces for defining self-contained, reusable metrics.
|
Package metrics provides interfaces for defining self-contained, reusable metrics. |
|
pathfilter
Package pathfilter excludes vendor, third-party, and generated files from analysis.
|
Package pathfilter excludes vendor, third-party, and generated files from analysis. |
|
persist
Package persist provides codec-based file persistence for arbitrary state types.
|
Package persist provides codec-based file persistence for arbitrary state types. |
|
pipeline
Package pipeline provides configuration option types for analysis pipeline items and composable building blocks for concurrent pipeline construction: RunPC (producer-consumer goroutine skeleton), Phase/RunPhases (chain-of-responsibility), Batcher (batching strategies), DispatchFunc (dispatch strategy), and Fetcher (cache decorator pattern).
|
Package pipeline provides configuration option types for analysis pipeline items and composable building blocks for concurrent pipeline construction: RunPC (producer-consumer goroutine skeleton), Phase/RunPhases (chain-of-responsibility), Batcher (batching strategies), DispatchFunc (dispatch strategy), and Fetcher (cache decorator pattern). |
|
safeconv
Package safeconv provides safe type conversion functions.
|
Package safeconv provides safe type conversion functions. |
|
sigutil
Package sigutil provides signal-handling utilities for graceful cleanup.
|
Package sigutil provides signal-handling utilities for graceful cleanup. |
|
textutil
Package textutil provides byte-level text utilities: binary detection, line counting, JSON encoding, and byte-slice reader adapters.
|
Package textutil provides byte-level text utilities: binary detection, line counting, JSON encoding, and byte-slice reader adapters. |
|
uast
Package uast provides a universal abstract syntax tree (UAST) representation and utilities for parsing, navigating, querying, and mutating code structure in a language-agnostic way.
|
Package uast provides a universal abstract syntax tree (UAST) representation and utilities for parsing, navigating, querying, and mutating code structure in a language-agnostic way. |
|
uast/lsp
Package lsp provides a Language Server Protocol (LSP) server for the mapping DSL used in the UAST framework.
|
Package lsp provides a Language Server Protocol (LSP) server for the mapping DSL used in the UAST framework. |
|
uast/pkg/mapping
Package mapping provides Tree-Sitter to UAST mapping rules and grammar analysis.
|
Package mapping provides Tree-Sitter to UAST mapping rules and grammar analysis. |
|
uast/pkg/node
Package node provides the canonical UAST node structure and operations for tree traversal, querying, and transformation.
|
Package node provides the canonical UAST node structure and operations for tree traversal, querying, and transformation. |
|
uast/pkg/spec
Package spec provides embedded UAST schema specifications.
|
Package spec provides embedded UAST schema specifications. |
|
units
Package units provides binary size unit multipliers (1024-based).
|
Package units provides binary size unit multipliers (1024-based). |
|
version
Package version provides the build version information for the Codefang binary.
|
Package version provides the build version information for the Codefang binary. |
|
scripts
|
|
|
bench-hibernation
command
bench-hibernation measures heap memory before and after Hibernate() calls during a real streaming run on a target repository.
|
bench-hibernation measures heap memory before and after Hibernate() calls during a real streaming run on a target repository. |
|
tools
|
|
|
lexgen
command
lexgen converts Chen-Skiena sentiment lexicon text files into an embedded Go source file.
|
lexgen converts Chen-Skiena sentiment lexicon text files into an embedded Go source file. |
|
precompgen
command
Package main provides the precompilation tool for UAST mapping files.
|
Package main provides the precompilation tool for UAST mapping files. |
|
schemagen
command
Package main generates JSON schemas for analyzer ComputedMetrics structs.
|
Package main generates JSON schemas for analyzer ComputedMetrics structs. |
Click to show internal directories.
Click to hide internal directories.