Skip to the content.

Trust Signals

coding-ethos is a security and policy-enforcement project, so public trust signals are part of the product surface. They help contributors and downstream repos evaluate whether the project practices the controls it asks others to adopt.

Current Signals

OpenSSF Scorecard

Target badge:

[![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/paudley/coding-ethos/badge)](https://scorecard.dev/viewer/?uri=github.com/paudley/coding-ethos)

The .github/workflows/scorecard.yml workflow publishes public Scorecard results with publish_results: true, uploads Scorecard SARIF to code scanning, and preserves the SARIF file as a workflow artifact. The public result is an ecosystem-facing signal, so regressions are tracked as project work instead of treated as badge cosmetics.

Current areas to monitor in the published result:

Repository Rulesets

The GitHub Main branch protection ruleset is the durable merge gate for refs/heads/main. It requires linear signed history, blocks deletion and non-fast-forward updates, requires the Python 3.11 test, Python 3.13 test, distribution build, and OpenSSF Scorecard status checks, and requires code scanning results from CodeQL, Scorecard, coding-ethos, OSV-Scanner, and Zizmor. Pull requests to main require one approving review, code-owner review, last-push approval, resolved review threads, Copilot review on push, and squash merge.

The GitHub Release branch approvals ruleset applies the same review and code scanning posture to refs/heads/release/*, with release branches retaining merge commits for release integration history.

OpenSSF Best Practices Badge

OpenSSF Best Practices

The OpenSSF Best Practices Badge is a separate human-reviewed checklist. The project tracks its public badge record at https://www.bestpractices.dev/en/projects/12737.

The project currently holds the Silver badge. The target remains Gold. Treat the badge as a project-quality checklist, not as badge decoration. Repo-side gaps should be remediated in code, docs, CI, or governance before a criterion is left as unmet. Criteria that depend on external GitHub organization settings, independent contributors, or human review capacity must remain explicit in the gap list until the underlying condition is true.

The root .bestpractices.json file is the durable repo-hosted proposal file consumed by the Best Practices site. Prefer the repo-hosted reanalysis path over query-string prefills; the prefill URL path proved too fragile and is not part of the supported workflow.

OpenSSF Scorecard’s CII-Best-Practices check is not controlled by repo-local SARIF or workflow output. It calls the Best Practices badge API for the Git repository URL and scores the public tier it receives. After the Best Practices UI advances the project to a new tier, verify that project 12737 uses https://github.com/paudley/coding-ethos as its repository URL, wait for the public Best Practices badge/API to reflect the new tier, then rerun the Scorecard workflow.

Preparation checklist:

Public Release Checklist