diff --git a/CHANGELOG.md b/CHANGELOG.md index cc1c1aa..19a0f49 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,18 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [4.2.1] - 2026-06-23 + +### Fixed + +- Python SDK wheel build (and therefore the PyPI + GitHub Release publish steps) + failed for 4.2.0: the `PyAutoDelegationConfig → AutoDelegationConfig` + conversion used a struct literal that omitted the `allow_manual_delegation` + field added to `AutoDelegationConfig`. The conversion now falls back to core + defaults for fields the Python SDK does not expose, so future core fields no + longer break the wheel build. (The crates.io and npm 4.2.0 artifacts were + unaffected; 4.2.1 completes the release across all channels.) + ## [4.2.0] - 2026-06-23 ### Added diff --git a/Cargo.lock b/Cargo.lock index 2a23729..5279689 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -37,7 +37,7 @@ dependencies = [ [[package]] name = "a3s-code-core" -version = "4.2.0" +version = "4.2.1" dependencies = [ "a3s-acl 0.2.0", "a3s-ahp", diff --git a/core/Cargo.toml b/core/Cargo.toml index 2740ec0..160c568 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "a3s-code-core" -version = "4.2.0" +version = "4.2.1" edition = "2021" authors = ["A3S Lab Team"] license = "MIT" diff --git a/sdk/node/Cargo.toml b/sdk/node/Cargo.toml index caa7fce..4a84846 100644 --- a/sdk/node/Cargo.toml +++ b/sdk/node/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "a3s-code-node" -version = "4.2.0" +version = "4.2.1" edition = "2021" authors = ["A3S Lab Team"] license = "MIT" @@ -11,7 +11,7 @@ description = "A3S Code Node.js bindings - Native addon via napi-rs" crate-type = ["cdylib"] [dependencies] -a3s-code-core = { version = "4.2.0", path = "../../core", features = ["ahp", "s3", "serve"] } +a3s-code-core = { version = "4.2.1", path = "../../core", features = ["ahp", "s3", "serve"] } napi = { version = "2", features = ["async", "napi6", "serde-json"] } napi-derive = "2" tokio = { version = "1.35", features = ["full"] } diff --git a/sdk/node/examples/package-lock.json b/sdk/node/examples/package-lock.json index 3a92f0d..abf23c1 100644 --- a/sdk/node/examples/package-lock.json +++ b/sdk/node/examples/package-lock.json @@ -18,7 +18,7 @@ }, "..": { "name": "@a3s-lab/code", - "version": "4.2.0", + "version": "4.2.1", "license": "MIT", "devDependencies": { "@napi-rs/cli": "^2", @@ -27,12 +27,12 @@ "typescript": "^5.9.3" }, "optionalDependencies": { - "@a3s-lab/code-darwin-arm64": "4.2.0", - "@a3s-lab/code-linux-arm64-gnu": "4.2.0", - "@a3s-lab/code-linux-arm64-musl": "4.2.0", - "@a3s-lab/code-linux-x64-gnu": "4.2.0", - "@a3s-lab/code-linux-x64-musl": "4.2.0", - "@a3s-lab/code-win32-x64-msvc": "4.2.0" + "@a3s-lab/code-darwin-arm64": "4.2.1", + "@a3s-lab/code-linux-arm64-gnu": "4.2.1", + "@a3s-lab/code-linux-arm64-musl": "4.2.1", + "@a3s-lab/code-linux-x64-gnu": "4.2.1", + "@a3s-lab/code-linux-x64-musl": "4.2.1", + "@a3s-lab/code-win32-x64-msvc": "4.2.1" } }, "node_modules/@a3s-lab/code": { diff --git a/sdk/node/package-lock.json b/sdk/node/package-lock.json index e3af6c9..aa62ab1 100644 --- a/sdk/node/package-lock.json +++ b/sdk/node/package-lock.json @@ -1,12 +1,12 @@ { "name": "@a3s-lab/code", - "version": "4.2.0", + "version": "4.2.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@a3s-lab/code", - "version": "4.2.0", + "version": "4.2.1", "license": "MIT", "devDependencies": { "@napi-rs/cli": "^2", @@ -15,12 +15,12 @@ "typescript": "^5.9.3" }, "optionalDependencies": { - "@a3s-lab/code-darwin-arm64": "4.2.0", - "@a3s-lab/code-linux-arm64-gnu": "4.2.0", - "@a3s-lab/code-linux-arm64-musl": "4.2.0", - "@a3s-lab/code-linux-x64-gnu": "4.2.0", - "@a3s-lab/code-linux-x64-musl": "4.2.0", - "@a3s-lab/code-win32-x64-msvc": "4.2.0" + "@a3s-lab/code-darwin-arm64": "4.2.1", + "@a3s-lab/code-linux-arm64-gnu": "4.2.1", + "@a3s-lab/code-linux-arm64-musl": "4.2.1", + "@a3s-lab/code-linux-x64-gnu": "4.2.1", + "@a3s-lab/code-linux-x64-musl": "4.2.1", + "@a3s-lab/code-win32-x64-msvc": "4.2.1" } }, "node_modules/@a3s-lab/code-darwin-arm64": { diff --git a/sdk/node/package.json b/sdk/node/package.json index 36ecb22..83c23ec 100644 --- a/sdk/node/package.json +++ b/sdk/node/package.json @@ -1,6 +1,6 @@ { "name": "@a3s-lab/code", - "version": "4.2.0", + "version": "4.2.1", "description": "A3S Code - Native Node.js bindings for the coding-agent runtime", "main": "index.js", "types": "index.d.ts", @@ -43,11 +43,11 @@ "test:helpers": "node test-helpers.mjs" }, "optionalDependencies": { - "@a3s-lab/code-darwin-arm64": "4.2.0", - "@a3s-lab/code-linux-x64-gnu": "4.2.0", - "@a3s-lab/code-linux-x64-musl": "4.2.0", - "@a3s-lab/code-linux-arm64-gnu": "4.2.0", - "@a3s-lab/code-linux-arm64-musl": "4.2.0", - "@a3s-lab/code-win32-x64-msvc": "4.2.0" + "@a3s-lab/code-darwin-arm64": "4.2.1", + "@a3s-lab/code-linux-x64-gnu": "4.2.1", + "@a3s-lab/code-linux-x64-musl": "4.2.1", + "@a3s-lab/code-linux-arm64-gnu": "4.2.1", + "@a3s-lab/code-linux-arm64-musl": "4.2.1", + "@a3s-lab/code-win32-x64-msvc": "4.2.1" } } diff --git a/sdk/python-bootstrap/pyproject.toml b/sdk/python-bootstrap/pyproject.toml index 6a98a25..3b10189 100644 --- a/sdk/python-bootstrap/pyproject.toml +++ b/sdk/python-bootstrap/pyproject.toml @@ -7,7 +7,7 @@ name = "a3s-code" # Keep in sync with crates/code core release. The bootstrap loader fetches # the matching native wheel from `https://github.com/AI45Lab/Code/releases/tag/v` # at import time. -version = "4.2.0" +version = "4.2.1" description = "A3S Code Python SDK — pure-Python bootstrap that fetches the native wheel from GitHub Releases" readme = "README.md" license = {text = "MIT"} diff --git a/sdk/python-bootstrap/src/a3s_code/_bootstrap.py b/sdk/python-bootstrap/src/a3s_code/_bootstrap.py index fa1b0e5..f0d3075 100644 --- a/sdk/python-bootstrap/src/a3s_code/_bootstrap.py +++ b/sdk/python-bootstrap/src/a3s_code/_bootstrap.py @@ -31,7 +31,7 @@ # Version is the bootstrap's own version, which equals the matching native # wheel version on GH Releases. Bumped by the release workflow. -__version__ = "4.2.0" +__version__ = "4.2.1" _DEFAULT_BASE_URL = "https://github.com/AI45Lab/Code/releases/download" _REQUEST_TIMEOUT_S = 120 diff --git a/sdk/python/Cargo.lock b/sdk/python/Cargo.lock index c00d09b..114965d 100644 --- a/sdk/python/Cargo.lock +++ b/sdk/python/Cargo.lock @@ -37,7 +37,7 @@ dependencies = [ [[package]] name = "a3s-code-core" -version = "4.1.0" +version = "4.2.1" dependencies = [ "a3s-acl 0.2.0", "a3s-ahp", @@ -92,7 +92,7 @@ dependencies = [ [[package]] name = "a3s-code-py" -version = "4.1.0" +version = "4.2.1" dependencies = [ "a3s-code-core", "anyhow", diff --git a/sdk/python/Cargo.toml b/sdk/python/Cargo.toml index 72ff19d..cff2a15 100644 --- a/sdk/python/Cargo.toml +++ b/sdk/python/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "a3s-code-py" -version = "4.2.0" +version = "4.2.1" edition = "2021" authors = ["A3S Lab Team"] license = "MIT" @@ -12,7 +12,7 @@ name = "a3s_code" crate-type = ["cdylib"] [dependencies] -a3s-code-core = { version = "4.2.0", path = "../../core", features = ["ahp", "s3", "serve"] } +a3s-code-core = { version = "4.2.1", path = "../../core", features = ["ahp", "s3", "serve"] } pyo3 = "0.23" tokio = { version = "1.35", features = ["full"] } serde_json = "1.0" diff --git a/sdk/python/pyproject.toml b/sdk/python/pyproject.toml index b713687..2b50765 100644 --- a/sdk/python/pyproject.toml +++ b/sdk/python/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "maturin" [project] name = "a3s-code" -version = "4.2.0" +version = "4.2.1" description = "A3S Code - Native Python bindings for the coding-agent runtime" readme = "README.md" license = {text = "MIT"} diff --git a/sdk/python/src/lib.rs b/sdk/python/src/lib.rs index 1895123..589f4ed 100644 --- a/sdk/python/src/lib.rs +++ b/sdk/python/src/lib.rs @@ -4744,6 +4744,10 @@ impl From for a3s_code_core::AutoDelegationConfig { auto_parallel: config.auto_parallel, min_confidence: config.min_confidence.clamp(0.0, 1.0), max_tasks: config.max_tasks.max(1), + // Core fields not exposed by the Python SDK (e.g. + // `allow_manual_delegation`) take their core defaults, so adding a + // field to `AutoDelegationConfig` no longer breaks this wheel build. + ..Default::default() } } }