runCodecheckReport runs MATLAB codeIssues over the LabKit checkout and
writes both the native JSON export and a browsable HTML report. Use it when you
need the complete analyzer result; ordinary tests and CI own their own focused
quality checks.
report = runCodecheckReport(root)
report = runCodecheckReport(root, "OpenReport", false)
report = runCodecheckReport(root, "ProgressFcn", progressFcn)Add the tool folder first:
repoRoot = "/path/to/LabKit-MATLAB-Workbench";
addpath(fullfile(repoRoot, "tools", "codecheck"))
report = runCodecheckReport(repoRoot, "OpenReport", false);| Name | Meaning |
|---|---|
root |
LabKit checkout root to scan. It is converted to a text scalar before file discovery. |
OpenReport |
Logical scalar. Default true; opens the generated HTML report in the system browser. |
ProgressFcn |
Empty or a function handle called as fcn(message, value), where value progresses from 0 to 1. |
The scan includes MATLAB files beneath root. It excludes .git, .github,
.vscode, .codes, artifacts, node_modules, and photos. Additional
private app roots configured outside root are included when their workspace
contains .labkit-accept-main-guardrails, or when
LABKIT_GUARD_PRIVATE_APPS explicitly enables local inspection.
The returned struct contains:
| Field | Meaning |
|---|---|
jsonFile |
Native codeIssues JSON export path. |
htmlFile |
LabKit HTML report path. |
fileCount |
Number of unique MATLAB files scanned. |
issueCount |
Unsuppressed issue count. |
suppressedIssueCount |
Suppressed issue count reported by MATLAB. |
Default reports are timestamped beneath artifacts/code-check/. A second run
within the same second receives a numeric suffix instead of overwriting the
first report.
An analyzer finding is report data, not a thrown failure. File-access errors, invalid MATLAB analyzer inputs, or report-write failures still raise their underlying MATLAB error. LabKit source must not add Code Analyzer suppression pragmas merely to make this report empty; fix the source shape or document a real external limitation in project governance.