internal/

directory
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 11, 2026 License: MIT

Directories

Path Synopsis
analyzers
astflat
Package astflat provides flat-AST navigation primitives that are general across rule and analyzer packages: call/navigation/argument decomposition, scope-walk helpers, condition-operand iteration.
Package astflat provides flat-AST navigation primitives that are general across rule and analyzer packages: call/navigation/argument decomposition, scope-walk helpers, condition-operand iteration.
nullflow
Package nullflow provides flow-sensitive nullability analysis primitives over a parsed scanner.File.
Package nullflow provides flow-sensitive nullability analysis primitives over a parsed scanner.File.
Package android provides parsers for Android project files.
Package android provides parsers for Android project files.
Package binsymbols defines the seam through which Krit consumes class metadata that lives outside the source workspace — JARs, AARs, stdlib stubs, or KAA-backed oracle responses.
Package binsymbols defines the seam through which Krit consumes class metadata that lives outside the source workspace — JARs, AARs, stdlib stubs, or KAA-backed oracle responses.
Package cacheutil is the shared infrastructure layer for every on-disk cache in krit.
Package cacheutil is the shared infrastructure layer for every on-disk cache in krit.
cli
api
clishared
Package clishared holds helpers shared across krit's verb-specific CLI packages (internal/cli/<verb>/).
Package clishared holds helpers shared across krit's verb-specific CLI packages (internal/cli/<verb>/).
daemonclient
Package daemonclient lets short-lived CLI verbs call a long-lived krit daemon when one is reachable, and fall back to in-process execution otherwise.
Package daemonclient lets short-lived CLI verbs call a long-lived krit daemon when one is reachable, and fall back to in-process execution otherwise.
gen
precommit
Package precommit runs single-buffer rule analysis on every Kotlin file currently staged for a git commit, routing the work through a running krit daemon when one is available.
Package precommit runs single-buffer rule analysis on every Kotlin file currently staged for a git commit, routing the work through a running krit daemon when one is available.
snapshot
Package snapshot implements the `krit snapshot` CLI verb.
Package snapshot implements the `krit snapshot` CLI verb.
suggestreviewers
Package suggestreviewers implements the `krit suggest-reviewers` subcommand: parse CODEOWNERS, follow the cross-file reference index from the symbols changed in a PR, and propose reviewer teams that own callers of those symbols (in addition to teams that own the changed files directly).
Package suggestreviewers implements the `krit suggest-reviewers` subcommand: parse CODEOWNERS, follow the cross-file reference index from the symbols changed in a PR, and propose reviewer teams that own callers of those symbols (in addition to teams that own the changed files directly).
Package daemon implements a long-lived krit process that keeps parse trees, the cross-file index, oracle state, and typeinfer caches resident in memory.
Package daemon implements a long-lived krit process that keeps parse trees, the cross-file index, oracle state, and typeinfer caches resident in memory.
devtools
jsonstat command
oraclefpcheck command
yamlcheck command
Package diag provides a Reporter type for analyzer libraries to emit verbose progress and warning messages without coupling to os.Stderr.
Package diag provides a Reporter type for analyzer libraries to emit verbose progress and warning messages without coupling to os.Stderr.
Package env provides a small Reader abstraction over process environment access.
Package env provides a small Reader abstraction over process environment access.
Package filefacts is the shared per-run memoization layer for per-file derived facts (imports, references, declaration summaries, and arbitrary rule-local computations).
Package filefacts is the shared per-run memoization layer for per-file derived facts (imports, references, declaration summaries, and arbitrary rule-local computations).
Package iterutil contains determinism-safe iteration helpers.
Package iterutil contains determinism-safe iteration helpers.
Package jsonrpc implements JSON-RPC 2.0 message transport shared by the LSP and MCP servers.
Package jsonrpc implements JSON-RPC 2.0 message transport shared by the LSP and MCP servers.
Package jsonschema provides a typed builder for JSON Schema documents.
Package jsonschema provides a typed builder for JSON Schema documents.
Package logger provides a small Logger interface over log/slog so production code logs to stderr/JSON while tests substitute Capture to assert on emitted records.
Package logger provides a small Logger interface over log/slog so production code logs to stderr/JSON while tests substitute Capture to assert on emitted records.
Package manifest carries the rule-facing data model for parsed AndroidManifest.xml files.
Package manifest carries the rule-facing data model for parsed AndroidManifest.xml files.
Package onboarding implements the shared logic for the krit init onboarding flow.
Package onboarding implements the shared logic for the krit init onboarding flow.
tui
oracletest
Package oracletest provides a shared contract test that every implementation of oracle.Lookup must satisfy.
Package oracletest provides a shared contract test that every implementation of oracle.Lookup must satisfy.
Package pipeline composes the Krit analysis workflow into a sequence of named, independently testable phases.
Package pipeline composes the Krit analysis workflow into a sequence of named, independently testable phases.
Package proc provides a small abstraction over os/exec so production code can take a dependency on Runner instead of calling exec.Command directly.
Package proc provides a small abstraction over os/exec so production code can take a dependency on Runner instead of calling exec.Command directly.
api
Package api defines the krit rule contract: a single Rule struct that declares its dependencies via a Capabilities bitfield and provides a single Check function which receives a Context carrying everything the rule needs.
Package api defines the krit rule contract: a single Rule struct that declares its dependencies via a Capabilities bitfield and provides a single Check function which receives a Context carrying everything the rule needs.
api/evidence
Package evidence is a thin facade over scanner.File + the wired type resolvers, exposing only the structured questions a rule should ask.
Package evidence is a thin facade over scanner.File + the wired type resolvers, exposing only the structured questions a rule should ask.
base
Package base holds the rule scaffolding types embedded by every rule implementation: BaseRule (name/ruleset/severity/description metadata and the Finding emit-helper), FlatDispatchBase (marker for flat-dispatch rules), and LineBase (marker for line-pass rules).
Package base holds the rule scaffolding types embedded by every rule implementation: BaseRule (name/ruleset/severity/description metadata and the Finding emit-helper), FlatDispatchBase (marker for flat-dispatch rules), and LineBase (marker for line-pass rules).
coroutines
Package coroutines is a rules subpackage demonstrating the per-domain topology described in the architecture diagnosis.
Package coroutines is a rules subpackage demonstrating the per-domain topology described in the architecture diagnosis.
ruletest
Package ruletest is the canonical entry point for unit-testing rules.
Package ruletest is the canonical entry point for unit-testing rules.
Package ruleslinter statically verifies that each rule which calls ctx.Resolver or (*oracle.CompositeResolver).Oracle() declares a matching capability in its api.Rule registration.
Package ruleslinter statically verifies that each rule which calls ctx.Resolver or (*oracle.CompositeResolver).Oracle() declares a matching capability in its api.Rule registration.
Package snapshot captures per-commit structural state (modules, files, symbols, scalar metrics) and persists it under `.krit/snapshots/` for later timeline and diff queries.
Package snapshot captures per-commit structural state (modules, files, symbols, scalar metrics) and persists it under `.krit/snapshots/` for later timeline and diff queries.
Package sourceheader extracts package and import header text from tree-sitter node strings.
Package sourceheader extracts package and import header text from tree-sitter node strings.
Package typeinfer provides lightweight type inference for Kotlin source code.
Package typeinfer provides lightweight type inference for Kotlin source code.
Package usedsymbols extracts the set of external (out-of-module) fully-qualified symbols a Kotlin compilation unit references.
Package usedsymbols extracts the set of external (out-of-module) fully-qualified symbols a Kotlin compilation unit references.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL