diff --git a/CHANGELOG.md b/CHANGELOG.md
index 4b157d47..c32dd21e 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,15 @@
+## [0.50.0](https://github.com/archgate/cli/compare/v0.49.0...v0.50.0) (2026-07-17)
+
+### Features
+
+* **engine:** cache ctx.ast() parse results within a single check run ([#487](https://github.com/archgate/cli/issues/487)) ([40b39d3](https://github.com/archgate/cli/commit/40b39d3eca1fee8ec4e6a24ef8a8323f92bcb6af)), closes [#482](https://github.com/archgate/cli/issues/482)
+* **engine:** ctx.findAstNodes() generic AST node collector ([#486](https://github.com/archgate/cli/issues/486)) ([f14b73b](https://github.com/archgate/cli/commit/f14b73b9372ae13f3f20143e2170741eaa8db1a6)), closes [#483](https://github.com/archgate/cli/issues/483)
+* **engine:** support { comments: true } for ctx.ast() Ruby ([#485](https://github.com/archgate/cli/issues/485)) ([36b891f](https://github.com/archgate/cli/commit/36b891f41525442b575698f140a355b776ab4688)), closes [#484](https://github.com/archgate/cli/issues/484)
+
+### Bug Fixes
+
+* **ci:** run PR workflows when a draft is marked ready for review ([#488](https://github.com/archgate/cli/issues/488)) ([ab1fc96](https://github.com/archgate/cli/commit/ab1fc96fd7fd2d11dfbbbfa0d46102a8d23f5290)), closes [#485](https://github.com/archgate/cli/issues/485) [#486](https://github.com/archgate/cli/issues/486)
+
## [0.49.0](https://github.com/archgate/cli/compare/v0.48.4...v0.49.0) (2026-07-16)
### ⚠ BREAKING CHANGES
diff --git a/docs/astro.config.mjs b/docs/astro.config.mjs
index 6d42c627..652eaa1c 100644
--- a/docs/astro.config.mjs
+++ b/docs/astro.config.mjs
@@ -183,7 +183,7 @@ export default defineConfig({
applicationCategory: "DeveloperApplication",
applicationSubCategory: "Code Linting",
operatingSystem: "macOS, Linux, Windows",
- softwareVersion: "0.49.0",
+ softwareVersion: "0.50.0",
license: "https://github.com/archgate/cli/blob/main/LICENSE",
offers: { "@type": "Offer", price: "0", priceCurrency: "USD" },
url: "https://cli.archgate.dev",
diff --git a/docs/public/version.json b/docs/public/version.json
index 18425548..bee39fa7 100644
--- a/docs/public/version.json
+++ b/docs/public/version.json
@@ -1 +1 @@
-{ "version": "v0.49.0" }
+{ "version": "v0.50.0" }
diff --git a/package.json b/package.json
index 53a89a94..69def3c4 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "archgate",
- "version": "0.49.0",
+ "version": "0.50.0",
"description": "Enforce Architecture Decision Records as executable rules — for both humans and AI agents",
"keywords": [
"adr",
diff --git a/shims/go/internal/shim/shim.go b/shims/go/internal/shim/shim.go
index b429b33d..0fc693f3 100644
--- a/shims/go/internal/shim/shim.go
+++ b/shims/go/internal/shim/shim.go
@@ -16,7 +16,7 @@ import (
)
// Version is the archgate CLI version this shim downloads.
-const Version = "0.49.0"
+const Version = "0.50.0"
const (
releaseBaseURL = "https://github.com/archgate/cli/releases/download"
diff --git a/shims/maven/pom.xml b/shims/maven/pom.xml
index 6179855c..86937326 100644
--- a/shims/maven/pom.xml
+++ b/shims/maven/pom.xml
@@ -6,7 +6,7 @@
dev.archgate
archgate-cli
- 0.49.0
+ 0.50.0
jar
archgate-cli
diff --git a/shims/maven/src/main/java/dev/archgate/cli/Shim.java b/shims/maven/src/main/java/dev/archgate/cli/Shim.java
index 96ee0334..c9b00847 100644
--- a/shims/maven/src/main/java/dev/archgate/cli/Shim.java
+++ b/shims/maven/src/main/java/dev/archgate/cli/Shim.java
@@ -30,7 +30,7 @@
*/
public final class Shim {
- private static final String VERSION = "0.49.0";
+ private static final String VERSION = "0.50.0";
private static final String BASE_URL = "https://github.com/archgate/cli/releases/download/v" + VERSION + "/";
private Shim() {}
diff --git a/shims/nuget/Archgate.Tool/Archgate.Tool.csproj b/shims/nuget/Archgate.Tool/Archgate.Tool.csproj
index d567f28d..afc5bbb0 100644
--- a/shims/nuget/Archgate.Tool/Archgate.Tool.csproj
+++ b/shims/nuget/Archgate.Tool/Archgate.Tool.csproj
@@ -6,7 +6,7 @@
true
archgate
archgate
- 0.49.0
+ 0.50.0
Enforce Architecture Decision Records as executable rules — for both humans and AI agents
Archgate
Apache-2.0
diff --git a/shims/nuget/Archgate.Tool/Program.cs b/shims/nuget/Archgate.Tool/Program.cs
index 89886c86..fcdce5bd 100644
--- a/shims/nuget/Archgate.Tool/Program.cs
+++ b/shims/nuget/Archgate.Tool/Program.cs
@@ -8,7 +8,7 @@ namespace Archgate.Tool;
internal static class Program
{
- private const string Version = "0.49.0";
+ private const string Version = "0.50.0";
private static readonly string CacheDir = Path.Join(
Environment.GetFolderPath(Environment.SpecialFolder.UserProfile),
diff --git a/shims/pypi/archgate/_version.py b/shims/pypi/archgate/_version.py
index d4ace94d..3a7c7a2f 100644
--- a/shims/pypi/archgate/_version.py
+++ b/shims/pypi/archgate/_version.py
@@ -1 +1 @@
-__version__ = "0.49.0"
+__version__ = "0.50.0"
diff --git a/shims/pypi/pyproject.toml b/shims/pypi/pyproject.toml
index 844e270a..93c3df64 100644
--- a/shims/pypi/pyproject.toml
+++ b/shims/pypi/pyproject.toml
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
[project]
name = "archgate"
-version = "0.49.0"
+version = "0.50.0"
description = "Enforce Architecture Decision Records as executable rules — for both humans and AI agents"
readme = "README.md"
requires-python = ">=3.8"
diff --git a/shims/rubygem/lib/archgate/version.rb b/shims/rubygem/lib/archgate/version.rb
index db17067a..4a993d72 100644
--- a/shims/rubygem/lib/archgate/version.rb
+++ b/shims/rubygem/lib/archgate/version.rb
@@ -1,5 +1,5 @@
# frozen_string_literal: true
module Archgate
- VERSION = "0.49.0"
+ VERSION = "0.50.0"
end