Repository navigation
v1.31.0
check-opencloud-security 1.31.0
Documentation
- Polished scan progress, errors, downloads and sharing text in English,
German, Spanish and French. Corrected informal Spanish instructions and
clarified that saved downloads remain available after a scan expires. - Updated all four web-service guides to describe every export format,
including offline HTML reports and remediation bundles. Expanded tests for
translated error pages, email drafts, link-free summaries and download links. - Translation checks now catch additional Spanish forms of informal address
and report broken guide links at their original line numbers, ignoring
links shown only in code examples. Added regression tests for both cases.
Added
- Coverage regression alerts. With
--baseline, a check that an earlier
run reached a conclusion on and that isinconclusivenow raises anOKto
WARNING, even when the grade has not moved. The rating, its perfdata and
the findings are untouched: the scan saw less, the instance did not change.
The warning lasts until the check is measured again,--warn-on-newdoes
not suppress it, the webhook'sbaseline_diffcarries the lost checks as
coverage_regressed, and the two-document comparison reports a
coverageRegressedscanner change. See ADR 0074 and
Reporting only what changed. - Grouped remediation plans.
remediationPlan.groupsplaces every open
finding in the system its fix is made in - the reverse proxy, the identity
provider, OpenCloud or the DNS zone - and merges the findings one edit
resolves into a single change: every missing header is one header block,
every exposed path one proxy rule, and the update closes every matching
advisory. Each change carries the rating it alone would give, replayed
through the rating function, andgroupSummarynames the changes that
resolve several findings at once. Shown by--debug, on the web dashboard
("What to change where"), in the remediation bundle, and returned by the
plan_remediationMCP tool. See ADR 0075 and
What would raise the rating. - Architecture decisions in the operator area. A new Decisions tab at
/admin/decisionslists every architecture decision record with its
status, and a filter narrows the list by number, title or status. Each
record opens as its own page in English, and links between records, or from
the Architecture tab, stay inside the area. The area's search now indexes
every record's full text. Like the rest of the area, the records are never
public: a stranger gets a 404, and they are absent from the public search,
the sitemap and/documentation. check-opencloud-scanner review-waivers. It reads the configured
waivers (ignore_hardeningsandtemporary_waivers, or the
--ignore-hardeningand--waive-untilvalues given to it) and lists five
kinds that need attention. Expired waivers no longer suppress anything.
Expiring soon ones run out within thewaiver_warningwindow. Unused
ones match no failing check in a--resultdocument, or with no document,
no identifier the scanner knows. Overlapping ones are already covered by
another waiver, such as a deadline hidden under a permanent*.
Permanent ones have no reason and no deadline. Each item has a suggested
cleanup, for a permanent waiver a--waive-untilrecord to copy. The
command never changes the configuration. It exits1when it lists
anything, unless given--exit-zero, and--format jsonsuits scripts. See
the scanner command.check-opencloud-scanner fleet. It turns savedscanresult
documents into one summary of a fleet. Give it files, or directories that
it searches for*.json, and it keeps the newest report of each host. It
lists end-of-life releases and releases whose support ends soon. The
recorded version is placed in today's release schedule again, so a line
that closed after the report was written is listed too. It lists waivers
that let a failing check alert again within--windowdays (default
30), measured against today. It counts the failing findings that most
hosts share, and leaves out the ones no operator can change. Under missing
coverage it lists stale reports (--stale-after, default7days), failed
scans, checks the scans could not evaluate, and hosts named by--expect
or--inventorythat have no report. The output is text, Markdown, JSON,
or one self-contained HTML page that fetches nothing. It never scans,
stores nothing and applies no threshold, so it exits0whenever it
printed a summary. See
the scanner command.
Fixed
- The
.debinstall smoke test survives a mirror caught mid-sync. When
the Ubuntu or Debian mirror lists a dependency it no longer serves (a
404),packaging/tests/install-smoke.shrefreshes the package index and
tries the install once more before the release dry run fails.
What's Changed
Full Changelog: v1.30.2...v1.31.0