Conversation
Summary of ChangesHello @yesudeep, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request significantly enhances the Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Changelog
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request significantly expands the capabilities of releasekit by introducing a more generic protocol for Forges and VCS systems, and adding multiple new backend implementations (GitLab, Bitbucket, Mercurial). The introduction of transitive version propagation and synchronized versioning adds valuable new features for managing complex monorepos. The code is well-structured, and the addition of protocol conformance tests is a great step towards ensuring robustness and maintainability.
I have two suggestions for improvement: one regarding an inefficiency in the new BitbucketAPIBackend and another to fix a type mismatch in the GitLabCLIBackend.
0c38755 to
111618e
Compare
6e359e0 to
be56676
Compare
4acf6ba to
42068aa
Compare
|
/gemini review |
There was a problem hiding this comment.
Code Review
This is an impressive and substantial pull request that introduces a powerful new release orchestration tool, releasekit. The changes are extensive, well-structured, and demonstrate a deep understanding of release engineering challenges across multiple ecosystems. The move to a protocol-based backend system is excellent for testability and future extensibility. The detailed configuration options, transitive dependency propagation, and comprehensive health checks are all great features. The documentation updates in the README and roadmap are also very thorough. I've found a couple of security-related improvement opportunities in the GitHub Action workflow file, but overall this is a very high-quality contribution.
dbbdb5d to
b36f997
Compare
|
/gemini review |
There was a problem hiding this comment.
Code Review
This is an extensive and well-executed pull request that significantly enhances the releasekit tool. The introduction of a protocol-based backend system for VCS, forges, package managers, and registries is a fantastic design choice that makes the tool highly extensible and testable. The addition of backends for GitLab, Bitbucket, Mercurial, and pnpm demonstrates the power of this new architecture.
The new features, including transitive version propagation, synchronized versioning, granular exclusion controls, and group-based releases, are powerful and well-implemented. The move to a dedicated releasekit.toml configuration file is a smart decision for a polyglot tool.
The attention to detail is evident throughout, from the security-conscious GitHub Action implementation to the comprehensive updates to documentation and the addition of numerous health checks. The code quality is excellent, and the new test suite provides good coverage for the new functionality. This is a high-quality contribution that greatly expands the capabilities of the release tool.
Add three backend implementations to validate protocol generality and catch transport/forge-specific edge cases early. The Forge protocol maps cleanly to CLI tools (gh, glab) and REST APIs (Bitbucket), and the VCS protocol works for both Git and Mercurial. Naming convention: CLI-based backends use 'CLIBackend' suffix, REST API-based backends use 'APIBackend' suffix. This makes it unambiguous if a future GitHubAPIBackend is added alongside GitHubCLIBackend. Backend renames: - GitHubBackend → GitHubCLIBackend - GitLabBackend → GitLabCLIBackend - GitBackend → GitCLIBackend - MercurialBackend → MercurialCLIBackend - BitbucketBackend → BitbucketAPIBackend Forge protocol (release-please foundations): - list_prs, add_labels, remove_labels, update_pr methods - GitHubCLIBackend: gh CLI (existing, extended) - GitLabCLIBackend: glab CLI (PR→MR, no draft releases) - BitbucketAPIBackend: httpx REST API (no labels, no native releases) Auth: Bearer token or Basic (username + app password), fail-fast Versioning (independent + synchronized modes): - BFS transitive PATCH propagation via dependency graph - synchronize=True config for lockstep versioning Code cleanup: - Removed section marker comments per GEMINI.md - Moved in-function imports to top-level - Converted asyncio.get_event_loop() to @pytest.mark.asyncio Config: - Added synchronize field to ReleaseConfig (default False) Tests: 524 pass. Lint and format clean. feat(releasekit): add prepare and release orchestrators Implements the two remaining orchestrators for the release-please pipeline: - prepare.py: bump versions, generate changelogs, open/update Release PR with embedded JSON manifest (RFC: marker comments for machine-parsing) - release.py: find merged PR, extract manifest, create tags, platform Release, update labels (autorelease: pending to tagged) Both modules are forge-agnostic with graceful degradation: - GitHub: full support (draft releases, labels) - GitLab: no drafts (logged warning), labels on MRs - Bitbucket: tags only (no Releases), labels are no-ops Also adds prepare/release CLI subcommands and updates the roadmap. Roadmap TODO: version constraint compatibility checking in BFS propagation to auto-skip packages whose pins conflict with new majors. feat: workspace protocol refactor: reorganize fix: for cli and api fix: cli and api fix: more stuff fix: lint fix: lint
b36f997 to
fa26455
Compare
#4722) ``` zsh❯ py/bin/releasekit plan --bumped --publishable 2026-02-17T22:16:17.010158Z [warning ] non_conventional_commit [releasekit.versioning] package=genkit sha=a15c4ec2 subject='elisa/fix/core framework improvements (#4649)' Level Package Current Next Bump Status Reason ─ ───── ────────────────────────── ─────── ───── ───── ──────── ────────────────────────────────────────────────────────────────────────────────────────────────────────────── 📦 0 genkit 0.5.0 0.6.0 minor included fix: Path fix for logging (#4642) 📦 1 genkit-plugin-anthropic 0.5.0 0.6.0 minor included fix(releasekit): replace literal null byte with git %x00 escape in changelog format (#4661) 📦 1 genkit-plugin-compat-oai 0.5.0 0.6.0 minor included fix(releasekit): replace literal null byte with git %x00 escape in changelog format (#4661) 📦 1 genkit-plugin-evaluators 0.5.0 0.6.0 minor included feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577) 📦 1 genkit-plugin-fastapi 0.5.0 0.6.0 minor included fix(py): address releasekit check warnings for metadata and grouping (#4595) 📦 1 genkit-plugin-google-cloud 0.5.0 0.6.0 minor included fix: Fixed firebase telemetry , refactored telemetry implementation fixed failing tests (#4530) 📦 1 genkit-plugin-google-genai 0.5.0 0.6.0 minor included fix(py): update google-genai evaluators and cleanup sample-test (#4648) 📦 1 genkit-plugin-ollama 0.5.0 0.6.0 minor included fix(releasekit): replace literal null byte with git %x00 escape in changelog format (#4661) 📦 1 genkit-plugin-xai 0.5.0 0.6.0 minor included fix(conform,anthropic): native executors, tool schema handling, and CLI consolidation (#4698) 📦 2 genkit-plugin-deepseek 0.5.0 0.6.0 minor included fix(releasekit): replace literal null byte with git %x00 escape in changelog format (#4661) 📦 2 genkit-plugin-flask 0.5.0 0.6.0 minor included feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577) 📦 2 genkit-plugin-vertex-ai 0.5.0 0.6.0 minor included fix(py/vertex-ai): async client creation with threaded credential refresh (#4608) Umbrella version: 0.6.0 Total: 12 packages (12 included) ```
# Release v0.6.0
This release includes **67** package(s).
| Package | Version heading |
|---------|----------------|
| `conform` | 0.2.0 (2026-02-17) |
| `dev-local-vectorstore-hello` | 0.2.0 (2026-02-17) |
| `framework-context-demo` | 0.2.0 (2026-02-17) |
| `framework-custom-evaluators` | 0.1.0 (2026-02-17) |
| `framework-dynamic-tools-demo` | 0.2.0 (2026-02-17) |
| `framework-evaluator-demo` | 0.1.0 (2026-02-17) |
| `framework-format-demo` | 0.2.0 (2026-02-17) |
| `framework-middleware-demo` | 0.2.0 (2026-02-17) |
| `framework-prompt-demo` | 0.1.0 (2026-02-17) |
| `framework-realtime-tracing-demo` | 0.2.0 (2026-02-17) |
| `framework-restaurant-demo` | 0.2.0 (2026-02-17) |
| `framework-tool-interrupts` | 0.2.0 (2026-02-17) |
| `genkit` | 0.6.0 (2026-02-17) |
| `genkit-plugin-amazon-bedrock` | 0.6.0 (2026-02-17) |
| `genkit-plugin-anthropic` | 0.6.0 (2026-02-17) |
| `genkit-plugin-checks` | 0.6.0 (2026-02-17) |
| `genkit-plugin-cloudflare-workers-ai` | 0.6.0 (2026-02-17) |
| `genkit-plugin-cohere` | 0.6.0 (2026-02-17) |
| `genkit-plugin-compat-oai` | 0.6.0 (2026-02-17) |
| `genkit-plugin-deepseek` | 0.6.0 (2026-02-17) |
| `genkit-plugin-dev-local-vectorstore` | 0.6.0 (2026-02-17) |
| `genkit-plugin-evaluators` | 0.6.0 (2026-02-17) |
| `genkit-plugin-fastapi` | 0.6.0 (2026-02-17) |
| `genkit-plugin-firebase` | 0.6.0 (2026-02-17) |
| `genkit-plugin-flask` | 0.6.0 (2026-02-17) |
| `genkit-plugin-google-cloud` | 0.6.0 (2026-02-17) |
| `genkit-plugin-google-genai` | 0.6.0 (2026-02-17) |
| `genkit-plugin-huggingface` | 0.6.0 (2026-02-17) |
| `genkit-plugin-mcp` | 0.6.0 (2026-02-17) |
| `genkit-plugin-microsoft-foundry` | 0.6.0 (2026-02-17) |
| `genkit-plugin-mistral` | 0.6.0 (2026-02-17) |
| `genkit-plugin-observability` | 0.6.0 (2026-02-17) |
| `genkit-plugin-ollama` | 0.6.0 (2026-02-17) |
| `genkit-plugin-vertex-ai` | 0.6.0 (2026-02-17) |
| `genkit-plugin-xai` | 0.6.0 (2026-02-17) |
| `genkit-tools-model-config-test` | 0.2.0 (2026-02-17) |
| `genkit-tools-sample-flows` | 0.1.1 (2026-02-17) |
| `provider-amazon-bedrock-hello` | 0.2.0 (2026-02-17) |
| `provider-anthropic-hello` | 0.2.0 (2026-02-17) |
| `provider-checks-hello` | 0.2.0 (2026-02-17) |
| `provider-cloudflare-workers-ai-hello` | 0.2.0 (2026-02-17) |
| `provider-cohere-hello` | 0.2.0 (2026-02-17) |
| `provider-compat-oai-hello` | 0.2.0 (2026-02-17) |
| `provider-deepseek-hello` | 0.2.0 (2026-02-17) |
| `provider-firestore-retriever` | 0.2.0 (2026-02-17) |
| `provider-google-genai-code-execution` | 0.2.0 (2026-02-17) |
| `provider-google-genai-context-caching` | 0.2.0 (2026-02-17) |
| `provider-google-genai-hello` | 0.2.0 (2026-02-17) |
| `provider-google-genai-media-models-demo` | 0.2.0 (2026-02-17) |
| `provider-google-genai-vertexai-hello` | 0.2.0 (2026-02-17) |
| `provider-google-genai-vertexai-image` | 0.2.0 (2026-02-17) |
| `provider-huggingface-hello` | 0.2.0 (2026-02-17) |
| `provider-microsoft-foundry-hello` | 0.1.0 (2026-02-17) |
| `provider-mistral-hello` | 0.2.0 (2026-02-17) |
| `provider-observability-hello` | 0.2.0 (2026-02-17) |
| `provider-ollama-hello` | 0.2.0 (2026-02-17) |
| `provider-vertex-ai-model-garden` | 0.2.0 (2026-02-17) |
| `provider-vertex-ai-rerank-eval` | 0.2.0 (2026-02-17) |
| `provider-vertex-ai-vector-search-bigquery` | 0.2.0 (2026-02-17) |
| `provider-vertex-ai-vector-search-firestore` | 0.2.0 (2026-02-17) |
| `provider-xai-hello` | 0.2.0 (2026-02-17) |
| `releasekit` | 0.2.0 (2026-02-17) |
| `web-endpoints-hello` | 0.2.0 (2026-02-17) |
| `web-fastapi-bugbot` | 0.2.0 (2026-02-17) |
| `web-flask-hello` | 0.2.0 (2026-02-17) |
| `web-multi-server` | 0.2.0 (2026-02-17) |
| `web-short-n-long` | 0.2.0 (2026-02-17) |
## Changelogs
<details><summary><b>genkit-tools-sample-flows</b></summary>
## 0.1.1 (2026-02-17)
### Bug Fixes
- **py**: relocate tools of model-config test and sample-flow test (1043245, #4669) — @Elisa Shen
</details>
<details><summary><b>genkit-tools-model-config-test</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: genkit.ai (f2dde35, #4702) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: relocate tools of model-config test and sample-flow test (1043245, #4669) — @Elisa Shen
</details>
<details><summary><b>framework-custom-evaluators</b></summary>
## 0.1.0 (2026-02-17)
### Features
- **releasekit**: supply-chain security, multi-ecosystem orchestration, and CI hardening (29d3ec1, #4682) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: add custom evaluator sample to match JS (3472939, #4670) — @Elisa Shen
</details>
<details><summary><b>genkit-plugin-fastapi</b></summary>
## 0.6.0 (2026-02-17)
### Features
- **py**: Add fastAPI plugin and sample (417158d, #4543) — @huangjeff5
### Bug Fixes
- **py**: address releasekit check warnings for metadata and grouping (4f5a910, #4595) — @Yesudeep Mangalapilly
- **ci**: enable releasekit check in bin/lint and PR workflow (f245d6b, #4590) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-checks-hello</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/checks**: add Google Checks AI Safety plugin (a8bf3c1, #4504) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
</details>
<details><summary><b>web-fastapi-bugbot</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **py**: Add fastAPI plugin and sample (417158d, #4543) — @huangjeff5
### Bug Fixes
- **py**: handle nullable JSON Schema types in Gemini plugin and clean up samples (4daef62, #4629) — @Yesudeep Mangalapilly
- **py**: address releasekit check warnings for metadata and grouping (4f5a910, #4595) — @Yesudeep Mangalapilly
- **ci**: enable releasekit check in bin/lint and PR workflow (f245d6b, #4590) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-cohere-hello</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/plugins**: add Cohere provider plugin (e424dcd, #4518) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: add missing LICENSE file and license metadata to samples (4ddd8a3, #4571) — @Yesudeep Mangalapilly
### Refactoring
- **py/plugins**: extract converters, add tests, community labeling (ebd0a2e, #4520) — @Yesudeep Mangalapilly
</details>
<details><summary><b>web-flask-hello</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>framework-format-demo</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>framework-context-demo</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>framework-middleware-demo</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-firestore-retriever</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: migrate default embedding model to gemini-embedding-001 (051f75f, #4557) — @Elisa Shen
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
</details>
<details><summary><b>framework-dynamic-tools-demo</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-ollama-hello</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-google-genai-code-execution</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-google-genai-context-caching</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-vertex-ai-vector-search-bigquery</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: migrate default embedding model to gemini-embedding-001 (051f75f, #4557) — @Elisa Shen
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
</details>
<details><summary><b>genkit-plugin-checks</b></summary>
## 0.6.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/checks**: add Google Checks AI Safety plugin (a8bf3c1, #4504) — @Yesudeep Mangalapilly
### Bug Fixes
- **releasekit**: replace literal null byte with git %x00 escape in changelog format (4866724, #4661) — @Yesudeep Mangalapilly
- issues reported by releasekit (fba9ed1, #4646) — @Yesudeep Mangalapilly
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-microsoft-foundry-hello</b></summary>
## 0.1.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-vertex-ai-vector-search-firestore</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: migrate default embedding model to gemini-embedding-001 (051f75f, #4557) — @Elisa Shen
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-vertex-ai-rerank-eval</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: handle nullable JSON Schema types in Gemini plugin and clean up samples (4daef62, #4629) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
</details>
<details><summary><b>framework-realtime-tracing-demo</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: handle nullable JSON Schema types in Gemini plugin and clean up samples (4daef62, #4629) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
</details>
<details><summary><b>genkit-plugin-evaluators</b></summary>
## 0.6.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: correct evaluator scoring bug (40bbdbc, #4573) — @Elisa Shen
- **py/plugins**: fix wheel build duplicate files in PEP 420 namespace packages (0c396b6, #4441) — @Yesudeep Mangalapilly
### Refactoring
- **py**: rename aws-bedrock plugin to amazon-bedrock (8acd6b0, #4448) — @Yesudeep Mangalapilly
</details>
<details><summary><b>genkit-plugin-mcp</b></summary>
## 0.6.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py/plugins**: move in-function import to top level in google-genai (7235768, #4461) — @Yesudeep Mangalapilly
- **py/plugins**: fix wheel build duplicate files in PEP 420 namespace packages (0c396b6, #4441) — @Yesudeep Mangalapilly
### Refactoring
- **py**: rename aws-bedrock plugin to amazon-bedrock (8acd6b0, #4448) — @Yesudeep Mangalapilly
</details>
<details><summary><b>web-short-n-long</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: fix broken flows in shot-n-long and combat-oai (9bdf5fd, #4610) — @Elisa Shen
- **py**: migrate default embedding model to gemini-embedding-001 (051f75f, #4557) — @Elisa Shen
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-observability-hello</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: genkit.ai (f2dde35, #4702) — @Yesudeep Mangalapilly
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
</details>
<details><summary><b>framework-prompt-demo</b></summary>
## 0.1.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: add custom evaluator sample to match JS (3472939, #4670) — @Elisa Shen
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>genkit-plugin-flask</b></summary>
## 0.6.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py/plugins/flask**: remove self-referencing cyclical dependency using releasekit (edaf88c, #4561) — @Yesudeep Mangalapilly
- **py/plugins**: fix wheel build duplicate files in PEP 420 namespace packages (0c396b6, #4441) — @Yesudeep Mangalapilly
### Refactoring
- **py**: rename aws-bedrock plugin to amazon-bedrock (8acd6b0, #4448) — @Yesudeep Mangalapilly
</details>
<details><summary><b>dev-local-vectorstore-hello</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: migrate default embedding model to gemini-embedding-001 (051f75f, #4557) — @Elisa Shen
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>framework-tool-interrupts</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-deepseek-hello</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: add missing LICENSE file and license metadata to samples (4ddd8a3, #4571) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-google-genai-hello</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-cloudflare-workers-ai-hello</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: add missing LICENSE file and license metadata to samples (4ddd8a3, #4571) — @Yesudeep Mangalapilly
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-vertex-ai-model-garden</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-google-genai-media-models-demo</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: add missing LICENSE file and license metadata to samples (4ddd8a3, #4571) — @Yesudeep Mangalapilly
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-compat-oai-hello</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: fix structlog config blowaway, DeepSeek reasoning, and double JSON encoding (ea0223b, #4625) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-amazon-bedrock-hello</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/plugins**: add Cohere provider plugin (e424dcd, #4518) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: add missing LICENSE file and license metadata to samples (4ddd8a3, #4571) — @Yesudeep Mangalapilly
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-mistral-hello</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/plugins**: add Cohere provider plugin (e424dcd, #4518) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: add missing LICENSE file and license metadata to samples (4ddd8a3, #4571) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>web-multi-server</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: fix living log and test flows in sample-flow-test tool (a9b9132, #4545) — @Elisa Shen
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>framework-evaluator-demo</b></summary>
## 0.1.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: add missing LICENSE file and license metadata to samples (4ddd8a3, #4571) — @Yesudeep Mangalapilly
- **py**: migrate default embedding model to gemini-embedding-001 (051f75f, #4557) — @Elisa Shen
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
</details>
<details><summary><b>genkit-plugin-google-cloud</b></summary>
## 0.6.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- Fixed firebase telemetry , refactored telemetry implementation fixed failing tests (05c1b55, #4530) — @Niraj Nepal
- **py**: fix structlog config blowaway, DeepSeek reasoning, and double JSON encoding (ea0223b, #4625) — @Yesudeep Mangalapilly
- **py/plugins**: fix wheel build duplicate files in PEP 420 namespace packages (0c396b6, #4441) — @Yesudeep Mangalapilly
### Refactoring
- **py**: rename aws-bedrock plugin to amazon-bedrock (8acd6b0, #4448) — @Yesudeep Mangalapilly
</details>
<details><summary><b>framework-restaurant-demo</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: fix living log and test flows in sample-flow-test tool (a9b9132, #4545) — @Elisa Shen
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-anthropic-hello</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: add missing LICENSE file and license metadata to samples (4ddd8a3, #4571) — @Yesudeep Mangalapilly
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-google-genai-vertexai-hello</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **py**: migrate default embedding model to gemini-embedding-001 (051f75f, #4557) — @Elisa Shen
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
<details><summary><b>provider-google-genai-vertexai-image</b></summary>
## 0.2.0 (2026-02-17)
### Features
- **releasekit**: add Forge protocol extensions, transitive propagation, and multi-backend conformance (d6dbb44, #4577) — @Yesudeep Mangalapilly
- **py/samples**: add web-endpoints-hello — REST + gRPC kitchen-sink sample (8614e5e, #4498) — @Yesudeep Mangalapilly
### Bug Fixes
- **releasekit**: fix git push argument order, boost test coverage to 92%, fix lint errors (59d9dc3, #4667) — @Yesudeep Mangalapilly
- **py**: resolve CI license check failures and lint diagnostics (e8519ef, #4524) — @Yesudeep Mangalapilly
### Refactoring
- **py/samples**: standardize naming taxonomy, consolidate shared logic, and close feature coverage gaps (1996c7c, #4488) — @Yesudeep Mangalapilly
### Documentation
- **py**: update readmes for all samples and plugins (e02ea9f, #4624) — @Yesudeep Mangalapilly
</details>
> **Note:** 22 changelog(s) omitted to stay within the PR body size limit. See individual CHANGELOG.md files for full details.
<!-- releasekit:manifest:start -->
```json
{
"git_sha": "3fc96674ec066181634177f90e9362858c5e6534",
"umbrella_tag": "py/v0.6.0",
"packages": [
{
"name": "conform",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "fix(conform,anthropic): native executors, tool schema handling, and CLI consolidation (#4698)",
"skipped": false,
"tag": "/conform-v0.2.0"
},
{
"name": "dev-local-vectorstore-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/dev-local-vectorstore-hello-v0.2.0"
},
{
"name": "framework-context-demo",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/framework-context-demo-v0.2.0"
},
{
"name": "framework-custom-evaluators",
"old_version": "0.0.1",
"new_version": "0.1.0",
"bump": "minor",
"reason": "feat(releasekit): supply-chain security, multi-ecosystem orchestration, and CI hardening (#4682)",
"skipped": false,
"tag": "/framework-custom-evaluators-v0.1.0"
},
{
"name": "framework-dynamic-tools-demo",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/framework-dynamic-tools-demo-v0.2.0"
},
{
"name": "framework-evaluator-demo",
"old_version": "0.0.1",
"new_version": "0.1.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/framework-evaluator-demo-v0.1.0"
},
{
"name": "framework-format-demo",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/framework-format-demo-v0.2.0"
},
{
"name": "framework-middleware-demo",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/framework-middleware-demo-v0.2.0"
},
{
"name": "framework-prompt-demo",
"old_version": "0.0.1",
"new_version": "0.1.0",
"bump": "minor",
"reason": "fix(py): add custom evaluator sample to match JS (#4670)",
"skipped": false,
"tag": "/framework-prompt-demo-v0.1.0"
},
{
"name": "framework-realtime-tracing-demo",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "fix(py): handle nullable JSON Schema types in Gemini plugin and clean up samples (#4629)",
"skipped": false,
"tag": "/framework-realtime-tracing-demo-v0.2.0"
},
{
"name": "framework-restaurant-demo",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/framework-restaurant-demo-v0.2.0"
},
{
"name": "framework-tool-interrupts",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/framework-tool-interrupts-v0.2.0"
},
{
"name": "genkit",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix: Path fix for logging (#4642)",
"skipped": false,
"tag": "/genkit-v0.6.0"
},
{
"name": "genkit-plugin-amazon-bedrock",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(releasekit): replace literal null byte with git %x00 escape in changelog format (#4661)",
"skipped": false,
"tag": "/genkit-plugin-amazon-bedrock-v0.6.0"
},
{
"name": "genkit-plugin-anthropic",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(releasekit): replace literal null byte with git %x00 escape in changelog format (#4661)",
"skipped": false,
"tag": "/genkit-plugin-anthropic-v0.6.0"
},
{
"name": "genkit-plugin-checks",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(releasekit): replace literal null byte with git %x00 escape in changelog format (#4661)",
"skipped": false,
"tag": "/genkit-plugin-checks-v0.6.0"
},
{
"name": "genkit-plugin-cloudflare-workers-ai",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(releasekit): replace literal null byte with git %x00 escape in changelog format (#4661)",
"skipped": false,
"tag": "/genkit-plugin-cloudflare-workers-ai-v0.6.0"
},
{
"name": "genkit-plugin-cohere",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(releasekit): replace literal null byte with git %x00 escape in changelog format (#4661)",
"skipped": false,
"tag": "/genkit-plugin-cohere-v0.6.0"
},
{
"name": "genkit-plugin-compat-oai",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(releasekit): replace literal null byte with git %x00 escape in changelog format (#4661)",
"skipped": false,
"tag": "/genkit-plugin-compat-oai-v0.6.0"
},
{
"name": "genkit-plugin-deepseek",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(releasekit): replace literal null byte with git %x00 escape in changelog format (#4661)",
"skipped": false,
"tag": "/genkit-plugin-deepseek-v0.6.0"
},
{
"name": "genkit-plugin-dev-local-vectorstore",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix: issues reported by releasekit (#4646)",
"skipped": false,
"tag": "/genkit-plugin-dev-local-vectorstore-v0.6.0"
},
{
"name": "genkit-plugin-evaluators",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/genkit-plugin-evaluators-v0.6.0"
},
{
"name": "genkit-plugin-fastapi",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(py): address releasekit check warnings for metadata and grouping (#4595)",
"skipped": false,
"tag": "/genkit-plugin-fastapi-v0.6.0"
},
{
"name": "genkit-plugin-firebase",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "feat(releasekit): graph based licensing (#4705)",
"skipped": false,
"tag": "/genkit-plugin-firebase-v0.6.0"
},
{
"name": "genkit-plugin-flask",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/genkit-plugin-flask-v0.6.0"
},
{
"name": "genkit-plugin-google-cloud",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix: Fixed firebase telemetry , refactored telemetry implementation fixed failing tests (#4530)",
"skipped": false,
"tag": "/genkit-plugin-google-cloud-v0.6.0"
},
{
"name": "genkit-plugin-google-genai",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(py): update google-genai evaluators and cleanup sample-test (#4648)",
"skipped": false,
"tag": "/genkit-plugin-google-genai-v0.6.0"
},
{
"name": "genkit-plugin-huggingface",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(releasekit): replace literal null byte with git %x00 escape in changelog format (#4661)",
"skipped": false,
"tag": "/genkit-plugin-huggingface-v0.6.0"
},
{
"name": "genkit-plugin-mcp",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/genkit-plugin-mcp-v0.6.0"
},
{
"name": "genkit-plugin-microsoft-foundry",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(microsoft-foundry): conform tests and sanitize credentials to prevent Unicode encoding errors (#4689)",
"skipped": false,
"tag": "/genkit-plugin-microsoft-foundry-v0.6.0"
},
{
"name": "genkit-plugin-mistral",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(releasekit): replace literal null byte with git %x00 escape in changelog format (#4661)",
"skipped": false,
"tag": "/genkit-plugin-mistral-v0.6.0"
},
{
"name": "genkit-plugin-observability",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(releasekit): replace literal null byte with git %x00 escape in changelog format (#4661)",
"skipped": false,
"tag": "/genkit-plugin-observability-v0.6.0"
},
{
"name": "genkit-plugin-ollama",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(releasekit): replace literal null byte with git %x00 escape in changelog format (#4661)",
"skipped": false,
"tag": "/genkit-plugin-ollama-v0.6.0"
},
{
"name": "genkit-plugin-vertex-ai",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(py/vertex-ai): async client creation with threaded credential refresh (#4608)",
"skipped": false,
"tag": "/genkit-plugin-vertex-ai-v0.6.0"
},
{
"name": "genkit-plugin-xai",
"old_version": "0.5.0",
"new_version": "0.6.0",
"bump": "minor",
"reason": "fix(conform,anthropic): native executors, tool schema handling, and CLI consolidation (#4698)",
"skipped": false,
"tag": "/genkit-plugin-xai-v0.6.0"
},
{
"name": "genkit-tools-model-config-test",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): genkit.ai (#4702)",
"skipped": false,
"tag": "/genkit-tools-model-config-test-v0.2.0"
},
{
"name": "genkit-tools-sample-flows",
"old_version": "0.1.0",
"new_version": "0.1.1",
"bump": "patch",
"reason": "fix(py): relocate tools of model-config test and sample-flow test (#4669)",
"skipped": false,
"tag": "/genkit-tools-sample-flows-v0.1.1"
},
{
"name": "provider-amazon-bedrock-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-amazon-bedrock-hello-v0.2.0"
},
{
"name": "provider-anthropic-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-anthropic-hello-v0.2.0"
},
{
"name": "provider-checks-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-checks-hello-v0.2.0"
},
{
"name": "provider-cloudflare-workers-ai-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-cloudflare-workers-ai-hello-v0.2.0"
},
{
"name": "provider-cohere-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-cohere-hello-v0.2.0"
},
{
"name": "provider-compat-oai-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "fix(py): fix structlog config blowaway, DeepSeek reasoning, and double JSON encoding (#4625)",
"skipped": false,
"tag": "/provider-compat-oai-hello-v0.2.0"
},
{
"name": "provider-deepseek-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-deepseek-hello-v0.2.0"
},
{
"name": "provider-firestore-retriever",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-firestore-retriever-v0.2.0"
},
{
"name": "provider-google-genai-code-execution",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-google-genai-code-execution-v0.2.0"
},
{
"name": "provider-google-genai-context-caching",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-google-genai-context-caching-v0.2.0"
},
{
"name": "provider-google-genai-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-google-genai-hello-v0.2.0"
},
{
"name": "provider-google-genai-media-models-demo",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-google-genai-media-models-demo-v0.2.0"
},
{
"name": "provider-google-genai-vertexai-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-google-genai-vertexai-hello-v0.2.0"
},
{
"name": "provider-google-genai-vertexai-image",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "fix(releasekit): fix git push argument order, boost test coverage to 92%, fix lint errors (#4667)",
"skipped": false,
"tag": "/provider-google-genai-vertexai-image-v0.2.0"
},
{
"name": "provider-huggingface-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-huggingface-hello-v0.2.0"
},
{
"name": "provider-microsoft-foundry-hello",
"old_version": "0.0.0",
"new_version": "0.1.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-microsoft-foundry-hello-v0.1.0"
},
{
"name": "provider-mistral-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-mistral-hello-v0.2.0"
},
{
"name": "provider-observability-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): genkit.ai (#4702)",
"skipped": false,
"tag": "/provider-observability-hello-v0.2.0"
},
{
"name": "provider-ollama-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-ollama-hello-v0.2.0"
},
{
"name": "provider-vertex-ai-model-garden",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-vertex-ai-model-garden-v0.2.0"
},
{
"name": "provider-vertex-ai-rerank-eval",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "fix(py): handle nullable JSON Schema types in Gemini plugin and clean up samples (#4629)",
"skipped": false,
"tag": "/provider-vertex-ai-rerank-eval-v0.2.0"
},
{
"name": "provider-vertex-ai-vector-search-bigquery",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-vertex-ai-vector-search-bigquery-v0.2.0"
},
{
"name": "provider-vertex-ai-vector-search-firestore",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/provider-vertex-ai-vector-search-firestore-v0.2.0"
},
{
"name": "provider-xai-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add default branch detection, and packaging (#4650)",
"skipped": false,
"tag": "/provider-xai-hello-v0.2.0"
},
{
"name": "releasekit",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "fix(releasekit): skip git hooks in release commits and pushes (#4723)",
"skipped": false,
"tag": "/releasekit-v0.2.0"
},
{
"name": "web-endpoints-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): supply-chain security, multi-ecosystem orchestration, and CI hardening (#4682)",
"skipped": false,
"tag": "/web-endpoints-hello-v0.2.0"
},
{
"name": "web-fastapi-bugbot",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "fix(py): handle nullable JSON Schema types in Gemini plugin and clean up samples (#4629)",
"skipped": false,
"tag": "/web-fastapi-bugbot-v0.2.0"
},
{
"name": "web-flask-hello",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/web-flask-hello-v0.2.0"
},
{
"name": "web-multi-server",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "feat(releasekit): add Forge protocol extensions, transitive propagation, and multi-backend conformance (#4577)",
"skipped": false,
"tag": "/web-multi-server-v0.2.0"
},
{
"name": "web-short-n-long",
"old_version": "0.1.0",
"new_version": "0.2.0",
"bump": "minor",
"reason": "fix(py): fix broken flows in shot-n-long and combat-oai (#4610)",
"skipped": false,
"tag": "/web-short-n-long-v0.2.0"
}
],
"created_at": "2026-02-17T23:04:44.937419+00:00"
}
```
<!-- releasekit:manifest:end -->
Summary
Extends the releasekit Forge and VCS protocols with new operations needed for the release-please model, adds three new backend implementations to validate protocol generality, implements transitive version propagation, and adds granular exclusion controls with PyPI metadata compliance.
Changes
Forge protocol extensions
list_prs: find PRs by label/state/head (for tag step)add_labels/remove_labels: manage autorelease labelsupdate_pr: update Release PR body with embedded manifestNew backends
GitHubCLIBackend— usesghGitLabCLIBackend— usesglabBitbucketAPIBackend— useshttpxGitCLIBackend— usesgitMercurialCLIBackend— useshgNaming convention
CLI-based backends use
CLIBackendsuffix, REST API-based useAPIBackend. Makes futureGitHubAPIBackendunambiguous alongsideGitHubCLIBackend.Versioning
deque-based, handles multi-level chains)synchronize=True) for lockstep releasessynchronizefield added toReleaseConfig(defaultFalse)Exclusion hierarchy
Three levels of exclusion control how much of the pipeline a package participates in:
exclude_publishexclude_bumpexcludeGroup references with
group:<name>syntaxAll exclude lists support
group:<name>references that recursively expand to group patterns. Cycle detection prevents infinite loops.New health checks (17 total, up from 10)
python_version— consistentrequires-pythonacross packagespython_classifiers— Python version classifiers (3.10–3.14)dependency_resolution—uv pip checkpassesnamespace_init— no__init__.pyin namespace directoriesreadme_field— publishable packages declarereadmein[project]changelog_url— publishable packages haveChangelogin[project.urls]publish_classifier_consistency—exclude_publishagrees withPrivate :: Do Not UploadclassifierPyPI metadata improvements (all packages + plugins)
Framework :: AsyncIOclassifierFramework :: PydanticclassifierFramework :: Pydantic :: 2classifierChangelogURL to[project.urls]for all 14 publishable packagesPrivate :: Do Not Uploadclassifier to all 39 samples and 8 unreleased pluginsCode cleanup
asyncio.get_event_loop()to@pytest.mark.asyncio.releasekit-state.jsonandrelease-manifest.jsonto.gitignoreREADME updates
uv publishvsreleasekitcomparison tablegroup:reference syntaxexclude_publishandexclude_bumpTests