Releases
Version 0.1.0
As it stood at this release: the repository · the docs · the knowledge bundle · the release
Added
- A LinkML schema of the structure of the CIS Critical Security Controls, Version 8.1, at its v8.1.2 revision. It holds the Controls, the Safeguards of each, and each Safeguard’s asset class, security function and Implementation Groups, names each element by its number, and carries no text of the Center for Internet Security (CIS).
- A weekly upstream watch, which reads CIS’s pages for the pinned version and reports a newer version, a missing pinned one, a moved page or a check that could not finish.
.lokf/cis-controls.yaml, the schema’slokf adaptcopy, rooted on the Control and the Safeguard. The knowledge release attaches it asschema-<tag>-cis-controls.yaml, and tests hold its names apart from those of the Linked Open Knowledge Format (LOKF) and of nine released lmodel copies.- An example of each class and a counter-example for each constraint, held to the validator by
just test. - The repository’s Knowledge Trust Ladder (KTL) knowledge bundle and its sidecar automation, from the KTL v0.59.0 templates with the lokf floor at 0.9.0, and a knowledge website that replaces the mkdocs site.
.github/release/package-lock.json, which pins semantic-release and every package it pulls in. The release job installs from it withnpm ci, and Dependabot keeps it current.
Changed
- Classes, enums and keys carry the schema’s own prefix, so none shares a name with LOKF or another lmodel schema:
CisControls,CisControl,CisSafeguard,CisImplementationGroup,CisAssetClass,CisSecurityFunction,cis_control_idandcis_safeguard_id. The identifiers are CIS’s own numbers, such as"4"and"4.1". - The schema’s name is
cis_controls, as its file and package are, and the Python project’s name iscis-controls-linkml. PyPI publishing stays off.
Removed
- CIS’s text, from the examples and the descriptions. The CIS Controls are licensed CC BY-NC-ND 4.0, and this repository is Apache-2.0.
- The
overview,why_criticalandprocedures_and_toolsslots and the three subsets. The slots held CIS’s text, and a subset marks schema elements, not a Safeguard’s Implementation Group. - The SSSOM mappings to lmodel/nist-csf-v2 and the
iso27001:mappings. Every SSSOM row named an element that nist-csf-v2 v0.1.0 no longer has, and lmodel/iso27001 is being rewritten. - The PyPI publishing workflow and the mkdocs site and its preview. The knowledge website replaces the site.
- The unused
yamllintruntime dependency. No code imports it, and the pre-commit hook installs its own copy.