Documentation Index
Fetch the complete documentation index at: https://docs.roboticks.io/llms.txt
Use this file to discover all available pages before exploring further.
Bundled OSS scanners
Paid tiers ship with six open-source scanners pre-wired. No BYO-connector fee. Enable them per project; results flow into the traceability matrix and the per-release evidence pack alongside any commercial findings.
All six emit SARIF (and, for trivy/syft, an SBOM); Roboticks ingests via the standard SARIF and SBOM paths.
What “bundled” means
- The runner images for
hosted-ros2-cpu,hosted-gazebo-gpu, andhosted-webots-cpucome with all six scanners preinstalled. - For self-hosted runners, you can opt in to the bundled image (
ghcr.io/roboticks-io/runner-base:scanners) or install them yourself. - No per-tool license fee. No
$149/connector/monthline. - Roboticks does not run the scanners for you. You wire them into your CI; we ingest the results.
Enabling per project
The platform-side toggle is just a notification preference: Settings → Findings → OSS scanners Toggling on:- Surfaces a per-tool tab in the Findings view
- Includes the tool in PR Check Run summaries
- Includes the tool’s appendix in the release evidence pack
Per-tool config
Each tool has a standard config file conventionally checked into the repo. Roboticks does not need to read these — but here’s the table for reference.| Tool | Config file | Notes |
|---|---|---|
| cppcheck | none (CLI flags) or cppcheck.cfg | Use --enable=warning,style,performance,portability,unusedFunction,missingInclude for the broad set |
| clang-tidy | .clang-tidy | Use Checks: bugprone-*,cert-*,clang-analyzer-*,misc-*,modernize-*,performance-*,portability-*,readability-* for the broad set |
| Bandit | bandit.yaml (.bandit) | Recipe: bandit -r . -f sarif -o bandit.sarif |
| Semgrep | .semgrep.yml or --config=auto | Auto downloads community rule packs |
| trivy | trivy.yaml | Scans filesystem, container images, IaC, secrets |
| syft | .syft.yaml (rare) | Default config is usually enough |
CI recipe — all six in one workflow
Findings vs metrics
| Scanner | Roboticks treats as |
|---|---|
| cppcheck, clang-tidy | finding (per rule violation) |
| Bandit, Semgrep | finding (per security issue) |
| trivy (vuln) | finding (per CVE) |
| trivy (SBOM), syft | sbom (SPDX or CycloneDX) — lands in evidence pack |
Severity mapping (per tool)
The defaults match upstream’s severity conventions; override at Settings → Findings → Severity mapping → OSS scanners.| Tool | Upstream severity | Roboticks default |
|---|---|---|
| cppcheck | error / warning / style / performance | error / warning / info / info |
| clang-tidy | warning (uniform) | warning (use rule prefix for finer mapping) |
| Bandit | High / Medium / Low | critical / error / warning |
| Semgrep | ERROR / WARNING / INFO | error / warning / info |
| trivy (vuln) | CRITICAL / HIGH / MEDIUM / LOW / UNKNOWN | critical / error / warning / info / info |
Where findings appear
- Traceability matrix — findings tied to source files annotated with
@confirmslink to the requirement. - Findings view — one tab per tool, plus an All tab.
- Release evidence pack — one appendix per tool with active findings; raw SARIF in the ZIP.
- PR Check Run —
Roboticks · OSS Scannerssummary with per-tool delta vs base.
When to upgrade to BYO
OSS scanners cover the common ground; you’d switch to a BYO commercial connector when:- You need formal-methods soundness — Polyspace Code Prover
- You need MISRA / AUTOSAR / JSF compliance reports with formal deviation workflow — LDRA
- You need enterprise-grade triage with named owners and a Connect server — Coverity
partialFingerprints and rule ID across tools.
Troubleshooting
cppcheck finds nothing
cppcheck finds nothing
By default cppcheck only checks for the most-conservative issues. Add
--enable=all --suppress=missingIncludeSystem to get the broad set.clang-tidy SARIF conversion fails
clang-tidy SARIF conversion fails
clang-tidy-sarif expects the YAML output from --export-fixes. If you redirected stdout instead, the YAML is missing some keys. Use --export-fixes=<file>, not stdout redirection.trivy SARIF has no fingerprints
trivy SARIF has no fingerprints
Older trivy versions omitted
partialFingerprints. Upgrade to trivy ≥ 0.45.Next
SBOM ingest
syft and trivy SBOMs feed the evidence pack.
BYO connectors
When you need commercial-grade analysis.