Skip to content

Glossary

All terms used in the wiki, CLI output, and portal, explained briefly.

Terms that appear in the wiki, CLI output, or portal, briefly explained.

API key

A long, secret string you generate in the portal under API Keys and store as a secret in your CI. It authenticates the GitHub Action against the portal download endpoint. More under Managing API Keys.

Cgr file

The file extension for CodeCharter rules. A .ccr file contains metadata (@name, @severity, ...) and a LINQ query against the schema. See File structure.

Channel

Release channel for CodeCharter distributions: Stable for tested releases and Edge for early pre-release versions.

CLI

The standalone command-line variant of CodeCharter. Available as a self-contained binary for Windows, Linux, and macOS; runs without an installed .NET runtime.

CodeCharter DSL

The small LINQ-like language in which custom rules are written. See DSL reference.

Determinism

A CodeCharter property: the same source code and the same rule set produce exactly the same findings every time, regardless of machine, time of day, or system load. See Determinism and caching.

Finding

A concrete violation of a rule at a specific location in the code. Has a severity (info, warn, error), a file path, a line number, and a link to the rule description.

GitHub Action

The official CI integration bochmann-software/codeguard@v1. Wraps the CLI, fetches it from the portal using your API key, runs the analysis, and publishes findings as PR annotations.

Rule pack

A group of related rules, shipped as a directory of .ccr files. CodeCharter ships with built-in packs (ASP.NET, Async, Naming, ...). You can add your own packs freely.

SARIF

Static Analysis Results Interchange Format — a JSON-based standard for code analysis tools. CodeCharter can output SARIF v2.1, which is natively consumed by GitHub Code Scanning and GitLab SAST.

Selector

The first part of a rule query that determines which code elements are checked: from t in Types, from m in Methods, and so on.

Severity

The severity level of a finding. CodeCharter has three levels:

  • info — informational, blocks nothing
  • warn — warning, does not block by default
  • error — error, blocks the build depending on configuration

Subscription

The commercial license you hold for CodeCharter. Controls whether you can pull downloads from the portal. Trial, Starter, Team, Business, or Enterprise. See Plan overview.

Suppression

A deliberate exception to a rule at a specific location. Can be placed inline via a comment or centrally in a configuration file. More under Suppressions.

SyntaxIssue

A semantically detected code finding prepared by the analyzer, for example "DateTime.Now was called directly". The DSL can access these findings via SyntaxIssues.Where(s => s.Kind == "...").

TimeProvider

Since .NET 8, the official abstraction over the system clock. CodeCharter recommends it instead of direct DateTime.Now calls and checks for this with a built-in rule.

Trial

The 7-day free full-access period every new account receives upon registration. See Registration and trial.

VSIX

The VS Code extension file. Offered as a download through the portal and installs the CodeCharter extension in the editor.

Waiver

Synonym for suppression — we use both interchangeably.