From 348948340c528278bf359ba5e0d1981b5c722d81 Mon Sep 17 00:00:00 2001 From: johnoneil Date: Wed, 7 Jan 2026 13:37:50 -0800 Subject: [PATCH] CI badge and status check --- .github/workflows/ci.yml | 19 ++++++++++++++----- README.md | 2 +- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3638dbf..34fdc7b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,11 +1,20 @@ name: CI # This workflow runs tests, formatting checks, and the fspec tool. -# To require passing CI for merges to master/main: -# 1. Go to Settings > Branches in your GitHub repository -# 2. Add a branch protection rule for master/main -# 3. Enable "Require status checks to pass before merging" -# 4. Select "Test Suite" as the required status check +# +# To set up branch protection for master/main (require reviews and passing CI): +# 1. Go to your repository on GitHub +# 2. Navigate to Settings > Branches +# 3. Click "Add branch protection rule" or edit existing rule for master/main +# 4. Enable the following options: +# - "Require a pull request before merging" +# - Enable "Require approvals" (set to 1 or more) +# - Optionally enable "Dismiss stale pull request approvals when new commits are pushed" +# - "Require status checks to pass before merging" +# - Select "Test Suite" as the required status check +# - Optionally: "Require conversation resolution before merging" +# - Optionally: "Do not allow bypassing the above settings" (prevents admins from bypassing) +# 5. Click "Create" or "Save changes" # # Note: Branch protection cannot be configured via files alone - it requires # repository settings access. However, this workflow will fail if tests don't pass, diff --git a/README.md b/README.md index 356829d..9d67705 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # fspec — Declarative Filesystem Specifications -![CI](https://github.com/USERNAME/REPO/actions/workflows/ci.yml/badge.svg) +![CI](https://github.com/johnoneil/fspec/actions/workflows/ci.yml/badge.svg) fspec is an experimental, declarative filesystem specification and validation tool, suitable for CI pipelines, auditing, and long-lived project structure enforcement. It provides a way to formally describe expected filesystem structure (directories, files, naming conventions, style, and invariants) in a way that is: