Skip to main content
This page explains the words Iris Code uses. Each word means one thing and is spelled one way, in these docs, in the editor, in the CLI and on the website.
This page is a reference, not an introduction. Each term is also explained where it first appears on the page that uses it, because people rarely open a terminology page while they are in the middle of a task.

Why this page exists

These docs once used four labels for the single act of scanning a project, two unrelated meanings for “workspace”, five for “rule” and three for “gate”. The word “finding” appeared 172 times across 37 pages without being defined anywhere. Each page made sense on its own, so the problem only showed when all of them were read together.

The words that carry the product

Finding - one thing Iris Code reports about your code, such as a password written into a file or a function that is too long. Every finding is either a blocker or a warning. It is not called an issue. Blocker - a serious finding, such as a password or key saved in the code, or a risky security pattern. Review it before you share the code. Warning - a finding that needs attention but is less serious, such as a long file or too many imports. A warning can still lower the health score or count towards a threshold you set. The gate uses your thresholds to decide whether a push or build passes. Whether a finding is labelled a blocker or a warning does not, on its own, decide that result. Gate - the yes-or-no decision about whether a change is allowed through, made by comparing a scan with the thresholds you set. There is one gate. Quality gate is not a second thing; the phrase only describes what kind of product Iris Code is. Threshold - a limit you set that the gate checks, such as minHealthScore (the lowest health score allowed) or gateMaxComplexity. A threshold is not a rule. Mixing the two up is the most common misunderstanding about how blocking works, which is why the accuracy benchmark opens by separating them. Health score - a file’s score out of 100. It starts at 100 and goes down as findings are counted, but never below 0. Use it to find files that need attention; a high score does not prove that the code works correctly. See Scoring. Scan - running the checks on some code, at any size: a file scan, a folder scan, a workspace scan, a cloud scan. It is not called a review, an audit or an analysis. Workspace - the project folder open in your editor, and nothing else. VS Code already uses this word for its folders, so Iris Code does not use it for anything but the folder. Team - the shared account that owns seats, connected repositories, the published standard, the audit trail and billing. This used to be called a workspace, which clashed with the editor meaning above.

Rules, in their five senses

“Rule” is the one word that genuinely means several things. Each meaning is always written with a qualifying word:

The rest

Snapshot - one saved record of a scan, kept so you can follow how scores change from day to day. The saved free scan and the HTML export are not snapshots. Readiness - whether the code you are looking at would pass the gate with your current settings. Hotspot - a file that ranks high for size or complexity within a scan. Entitlement - which plan applies to a person in their editor. It comes from an individual subscription, an individual trial or a team seat, checked in that order. See Entitlement. Analysis engine - @iris-code/core, the one set of checks every part of Iris Code uses, so a finding in JetBrains is the same finding in VS Code, on the same line. Code smell - a pattern that is not a bug itself but makes a bug more likely. Dependency audit - checking the packages your project uses against OSV, a public database of security advisories. Audit stays as a verb only here, because checking packages is a different act from scanning your own code. Audit trail - the record of what ran, on which commit and under which version of the policy. A record, not an act.

Spelling

The product is Iris Code, with a space, in all prose. Never IrisCode, never bare Iris. Machine forms are not prose and are unchanged: iriscode.co, iris-code, iris (the CLI binary), iris.* settings and command ids, .irisconfig.json, @iris-code/core, @iris-code/cli.