diff --git a/CHANGELOG.md b/CHANGELOG.md index 75e29cf..2ef814f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,8 @@ Notable changes to JevGate. Versions follow [Semantic Versioning](https://semver ## [Unreleased] +## [0.32.0] - 2026-09-29 + A whole-repository check now finishes where it stopped halfway, says what it is doing while it runs, and fails at once, in one line, without a key. Measured on a 950-file TypeScript and Python project whose jevgate.toml, written for 0.8, set `maintainability = "consider"`, `max_requests = 1000` and `concurrency = 4`: 0.31.0 planned 1,126 first-pass requests, spent its 1,000 on them in 70 silent seconds and left 377 files unchecked, advising a larger `--max-requests`, which could not raise the ceiling jevgate.toml set; this version asks 930 requests in 73 seconds from an empty cache, drawing a status line all along, and finishes ($0.05). A rerun from the cache takes 2 seconds. ### Checks of the whole repository @@ -460,7 +462,8 @@ These changes come from running 0.11.0 on six open-source repositories it had ne - First release: the maintainability CLI. -[Unreleased]: https://github.com/Tech-Byte-Frontier/jevgate/compare/v0.31.0...HEAD +[Unreleased]: https://github.com/Tech-Byte-Frontier/jevgate/compare/v0.32.0...HEAD +[0.32.0]: https://github.com/Tech-Byte-Frontier/jevgate/compare/v0.31.0...v0.32.0 [0.31.0]: https://github.com/Tech-Byte-Frontier/jevgate/compare/v0.30.0...v0.31.0 [0.30.0]: https://github.com/Tech-Byte-Frontier/jevgate/compare/v0.25.0...v0.30.0 [0.25.0]: https://github.com/Tech-Byte-Frontier/jevgate/compare/v0.24.1...v0.25.0 diff --git a/Cargo.lock b/Cargo.lock index 8c92491..f859797 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -966,7 +966,7 @@ checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" [[package]] name = "jevgate" -version = "0.31.0" +version = "0.32.0" dependencies = [ "anyhow", "clap", diff --git a/Cargo.toml b/Cargo.toml index 72159b5..50e4a00 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "jevgate" -version = "0.31.0" +version = "0.32.0" edition = "2024" rust-version = "1.90" description = "Code-review gate for CI and coding agents: asks TypeSafe Jev small questions about functions, files, tests and docs, and reports maintainability, test, security and documentation findings with locations and how often findings like them were right" diff --git a/README.md b/README.md index caeb557..34d581f 100644 --- a/README.md +++ b/README.md @@ -75,7 +75,7 @@ jobs: - uses: Tech-Byte-Frontier/jevgate-action@v1 with: api-key: ${{ secrets.TYPESAFE_API_KEY }} - version: 0.31.0 + version: 0.32.0 ``` It reviews only what the pull request changed (the functions, tests and comments on changed lines, and copies where either copy changed), annotates each finding on its line and writes a job summary; unchanged code is answered from the cache for free. [Continuous integration](https://tech-byte-frontier.github.io/jevgate/ci.html) covers other CI systems, pull requests from forks, budgets and a gate policy the change cannot edit, and [Git hooks](https://tech-byte-frontier.github.io/jevgate/git-hooks.html) run the same gate before each push or commit (`jevgate init --git-hook pre-push`), with recipes for pre-commit, prek, lefthook and husky. diff --git a/npm/package.json b/npm/package.json index d747e77..c722112 100644 --- a/npm/package.json +++ b/npm/package.json @@ -1,6 +1,6 @@ { "name": "@tech-byte-frontier/jevgate", - "version": "0.31.0", + "version": "0.32.0", "description": "JevGate, the code-review gate for CI and coding agents: this package downloads the matching release binary, checks its SHA-256, caches it and runs it", "keywords": [ "code-review", diff --git a/plugin/.claude-plugin/plugin.json b/plugin/.claude-plugin/plugin.json index 3f1338c..374f190 100644 --- a/plugin/.claude-plugin/plugin.json +++ b/plugin/.claude-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "jevgate", "displayName": "JevGate", - "version": "0.31.0", + "version": "0.32.0", "description": "JevGate in the agent's loop: checks each edit and the end of each turn, keeps Claude working while findings fail the gate, and adds JevGate's MCP tools and a skill for acting on findings. Runs the jevgate command, 0.27 or later, which you install separately.", "author": { "name": "Tech Byte Frontier", diff --git a/site/src/ci.md b/site/src/ci.md index 07398b8..e995412 100644 --- a/site/src/ci.md +++ b/site/src/ci.md @@ -17,7 +17,7 @@ jobs: - uses: Tech-Byte-Frontier/jevgate-action@v1 with: api-key: ${{ secrets.TYPESAFE_API_KEY }} - version: 0.31.0 + version: 0.32.0 ``` The action installs a checked release binary, keeps `.jevgate/cache` in the Actions cache and runs `jevgate check --base --format github`; `args` passes more flags, such as `--rule default --rule security` to add the security rules to the default ones. Naming a rule replaces the selection, and a selection without a mature rule level never fails the default gate: `--rule security` alone reports security findings without ever failing the gate. It runs on Linux, macOS and Windows runners. For an OpenRouter or Vercel AI Gateway key, leave `api-key` out and set the key's variable in the step's `env`, such as `OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }}`, with `version` 0.26.0 or later; jevgate-action 1.2 adds `api-key-kind: openrouter` or `api-key-kind: vercel` for the same. diff --git a/site/src/git-hooks.md b/site/src/git-hooks.md index 6fc0347..ce87b91 100644 --- a/site/src/git-hooks.md +++ b/site/src/git-hooks.md @@ -47,7 +47,7 @@ The hooks need JevGate 0.31.0 or later on the PATH (or built by pre-commit), and default_install_hook_types: [pre-commit, pre-push] repos: - repo: https://github.com/Tech-Byte-Frontier/jevgate - rev: v0.31.0 + rev: v0.32.0 hooks: - id: jevgate-push-system # before each push; jevgate-system before each commit ```