[Extension]: Update gates (Quality Gates — Enforcement Layer) to 0.4.1
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 1/5
- Estimated time
- Under an hour
- Newbie friendliness
- 85/100
Research direction
Start by locating the existing gates catalog entry, then compare its fields with the proposed entry in this issue. Update the version, download URL, provides counts, tags, and updated_at while preserving the existing creation date, downloads, and stars. Confirm the catalog reflects version 0.4.1 and the two hooks and eight commands.
Written by the indexing model from the issue text.
Description
Extension ID
gates
Extension Name
Quality Gates (Enforcement Layer)
Version
0.4.1
Description
Deterministic quality enforcement for Spec Kit projects at three boundaries: the agent boundary (Claude Code PreToolUse/PostToolUse/Stop hooks), the git boundary (pre-commit / pre-merge-commit / commit-msg), and the CI boundary (projected GitHub Actions / GitLab CI / Jenkins pipelines). One policy file, one verify entrypoint, identical results at every boundary.
Author
schwichtgit
Repository URL
https://github.com/schwichtgit/spec-gates
Download URL
https://github.com/schwichtgit/spec-gates/releases/download/v0.4.1/gates-0.4.1.zip
License
MIT
Homepage (optional)
https://github.com/schwichtgit/spec-gates
Documentation URL (optional)
https://github.com/schwichtgit/spec-gates/blob/main/docs/how-it-works.md
Changelog URL (optional)
https://github.com/schwichtgit/spec-gates/releases
Required Spec Kit Version
=0.12.0
Required Tools (optional)
- jq (required)
- git (required)
- python3 (required)
- cmp (required)
- node with pinned prettier/markdownlint-cli2 (optional, for the lint gates)
- shellcheck (optional, for shell linting)
Number of Commands
8
Number of Hooks (optional)
2
Tags
quality, enforcement, hooks, ci, governance
Key Features
/speckit.gates.init— Infer a quality policy from the repo, project the enforcement runtime, wire agent + git hooks, and run a self-test/speckit.gates.verify— Run the full gate suite on demand (same checks as the Stop hook, pre-commit, and CI)/speckit.gates.doctor— Check enforcement health: tools, hooks wired and proven, runtime current, upgrade safety, install hygiene, and the spec, contract and constitution gates/speckit.gates.ci— Project CI enforcement for a platform: github | gitlab | jenkins (optionally --protect the default branch)/speckit.gates.upgrade— Upgrade the extension and re-project the enforcement runtime through one reviewable step (never touches policy.json)/speckit.gates.sync— Sync the policy baseline contract: pin, snapshot, and materialize the effective policy (--update moves the pin as a reviewable change)/speckit.gates.propose— Propose this repo's policy deviations upstream as a change request against the baseline/speckit.gates.constitution— Guided constitution session: interview to a profile, pick corpus principles, and produce an enforcement-annotated, ratifiable draft
Testing Checklist
- Extension installs successfully via download URL
- All commands execute without errors
- Documentation is complete and accurate
- No security vulnerabilities identified
- Tested on at least one real project
Submission Requirements
- Valid
extension.ymlmanifest included - README.md with installation and usage instructions
- LICENSE file included
- GitHub release created with version tag
- All command files exist and are properly formatted
- Extension ID follows naming conventions (lowercase-with-hyphens)
Testing Details
Tested on: macOS (bash 3.2, BSD toolchain) and Linux/GNU (ubuntu-latest CI).
Test project: the extension repository dogfoods itself — CI projects the
released runtime and runs verify.sh --boundary ci, the canary suite
(planted violations must be rejected), and 15 test suites on every PR.
The release asset is sha256-checksummed and sigstore-signed; the release
workflow fails closed if the tag, manifest, and package versions disagree, or
if required package contents (manifest, constitution corpus, runtime) are
missing from the zip.
Downstream: in production use by real downstream projects (GitHub and
GitLab CI backstops); 0.4.0 and 0.4.1 were validated by downstream projects
upgrading from release candidates and from the released assets.
Example Usage
# Install (this exact version)
specify extension add gates --from https://github.com/schwichtgit/spec-gates/releases/download/v0.4.1/gates-0.4.1.zip
# Or always the latest release
specify extension add gates --from https://github.com/schwichtgit/spec-gates/releases/latest/download/gates.zip
# Set up enforcement (infer policy, project runtime, wire hooks, self-test)
/speckit.gates.init
# Prove it holds
/speckit.gates.verify
Proposed Catalog Entry
{
"_note": "This is an UPDATE of the existing 'gates' entry — replace version, download_url, provides, and updated_at in place; preserve created_at, downloads, and stars.",
"gates": {
"version": "0.4.1",
"download_url": "https://github.com/schwichtgit/spec-gates/releases/download/v0.4.1/gates-0.4.1.zip",
"requires": {
"speckit_version": ">=0.12.0"
},
"provides": {
"commands": 8,
"hooks": 2
},
"tags": [
"quality",
"enforcement",
"hooks",
"ci",
"governance"
],
"updated_at": "2026-10-08T00:00:00Z"
}
}
Additional Context
Update of the existing gates catalog entry (first listed at 0.1.0 via
github/spec-kit PR #3431). The entry's provides counts changed since
listing: 8 commands and 2 hooks.
Changes since the listed catalog version (0.3.6):
full commit-level delta at https://github.com/schwichtgit/spec-gates/compare/v0.3.6...v0.4.1 —
release-by-release notes at https://github.com/schwichtgit/spec-gates/releases.
Release assets are sha256-checksummed and sigstore keyless-signed;
verification instructions are in the release notes. Release notes are
generated from Conventional Commits per release (no hand-maintained
changelog to drift).
- Dominant language
- Python
- Stars
- 140k
- Forks
- 12.6k
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 195
Getting set up
Starts the project's dev container in your browser, under your own GitHub account.
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from github/spec-kit
-
feature-assess feature-go triage-can-wait
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
github/spec-kit#4804 · 6 comments ·
Maintainers usually reply within 1 day
-
needs-triage triage-nice-to-have
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
github/spec-kit#4527 · 1 comment ·
Maintainers usually reply within 1 day
-
[Bug]: specify init writes speckit.manifest.json without the speckit-converge skill it just installedMay be free again A pull request for this issue was closed without being merged. Openbug-assess severity-medium
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
github/spec-kit#4273 · 3 comments ·
Maintainers usually reply within 1 day
-
[Bug]: /speckit-implement counts checkbox markers inside fenced code blocks — example checkboxes can falsely block implementationPossibly taken @ntdatt812 claimed this 27 days ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Maintainers usually reply within 1 day
-
[Extension]: Jira Integration (Sync Engine) v0.5.0 (version update of jira-sync)Possibly taken @github-actions claimed this 52 days ago. Openextension-submission validation-passed
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
github/spec-kit#4099 · 3 comments ·
Maintainers usually reply within 1 day
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Maintainers usually reply within 1 day
-
SR_SECURITY_DESCRIPTOR.fromString drops the SACL when no DACL is presentPossibly taken @paul7436 claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
equinor/fmu-sumo-uploader#302 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
modelscope/evalscope#1821 ·
Maintainers usually reply within 1 day
-
Sanity on ansible-core devel fails: ignore-2.23.txt references the removed import-3.9 testPossibly taken @yurnov claimed this today. Openneeds_triage
Difficulty 1/5 Under an hour Newbie friendliness 91/100
ansible-collections/kubernetes.core#1275 ·
Maintainers usually reply within 1 day