rlsbl v0.60.1 /rlsbl.checks
On this page

Project checks registered on the strictcli check system, including version consistency, lock staleness, and changelog validation.

#rlsbl.checks

#rlsbl.checks

Project checks registered on the strictcli check system.

Each check is registered via @app.check("name") and receives a :class:~rlsbl.context.ProjectContext (or its :class:~rlsbl.check_context.WorkspaceCheckContext subclass).

The check functions return :class:strictcli.CheckResult with lowercase status strings: "pass", "fail", "warn", "skip".

#get_feature_matrix

python
def get_feature_matrix() -> dict[str, dict[str, str]]

Build a feature matrix mapping check names to per-target support.

Returns {check_name: {target: "yes"|"no"|"n/a"|"all"|"workspace"}} where:

  • "all" means the check is universal (works for any target)
  • "workspace" means the check requires a monorepo workspace
  • "yes" means the target is explicitly supported
  • "n/a" means the check is deliberately excluded (toolchain handles it)
  • "no" means the target is not supported

#generate_feature_matrix_markdown

python
def generate_feature_matrix_markdown() -> str

Generate a Markdown table of check-vs-target support.

Only includes checks that have target-specific behavior (not universal or workspace-only), since those are the interesting rows.

#_resolve_version_and_tag

python
def _resolve_version_and_tag(ctx)

Detect version and tag from project targets rooted at ctx.

Returns (version, tag); either may be None.

#register_checks

python
def register_checks(app)

Register all project checks on app.

Silently returns if the check system is not enabled (i.e. no .strictcli/checks.toml was found at import time -- this happens when rlsbl is imported from a working directory that is not the rlsbl source tree, e.g. a user's project directory).