Skip to content

chore(release): prep v0.2.2 — lockstep version bump (6 packages)#41

Merged
hallengray merged 1 commit into
mainfrom
chore/release-v0.2.2
Apr 15, 2026
Merged

chore(release): prep v0.2.2 — lockstep version bump (6 packages)#41
hallengray merged 1 commit into
mainfrom
chore/release-v0.2.2

Conversation

@hallengray

Copy link
Copy Markdown
Owner

Summary

Bumps 0.2.1 -> 0.2.2 on every package that ships to a registry, in lockstep. Final step before cutting the v0.2.2 GitHub Release.

Package Registry Bump
`rag-forge-core` PyPI 0.2.1 -> 0.2.2
`rag-forge-evaluator` PyPI 0.2.1 -> 0.2.2
`rag-forge-observability` PyPI 0.2.1 -> 0.2.2
`@rag-forge/cli` npm 0.2.1 -> 0.2.2
`@rag-forge/mcp` npm 0.2.1 -> 0.2.2
`@rag-forge/shared` npm 0.2.1 -> 0.2.2

Every Python package has both halves bumped — `pyproject.toml` `version` and `/init.py` `version`. The G5 drift guard (`packages/evaluator/tests/test_version_drift.py`) asserts they match and is now parameterised + auto-discovered, so it covers every Python package automatically.

CHANGELOG: dated the v0.2.2 entry `2026-04-15` (removed "unreleased").

What this release closes

Five workstreams, already merged to main before this PR:

  • #36 G1 — missing `ragas.llms.base.BaseRagasLLM` methods (`.generate()`, `.is_finished()`, `.get_temperature()`, `.set_run_config()`) + full async/sync + parameter-parity contract tests
  • #38 G3 — `skipped_evaluations` counter now populated + per-(sample, metric) skip fan-out + 400-char reason truncation
  • #37 G5 — `version` lockstep + auto-discover + tomllib-based drift guard
  • #39 G4 — CHANGELOG + migration guide disclosing the Context Relevance rubric drift
  • #40 G2 — Cycle 2/3 verification evidence report

Every Cycle 2 / Cycle 3 finding attributed to RAG-Forge is closed. See `docs/release-notes/v0.2.2-verification-report.md` for per-finding evidence.

Test plan

  • G5 version drift guard green locally (already verified: 4/4 passed post-bump)
  • `pnpm run typecheck` clean
  • `pnpm run test` green
  • CodeRabbit review on the version bump PR
  • After merge: create GitHub Release `v0.2.2` to trigger `publish.yml`
  • Post-publish: `npm view @rag-forge/{cli,mcp,shared}@0.2.2` and `curl pypi.org/pypi/{core,evaluator,observability}/json` all return 0.2.2

Notes

  • No code changes in this PR beyond version strings and the CHANGELOG date.
  • `publish.yml` version-drift validator refuses to publish if any package drifts from the release tag — if a seventh package was added without being bumped here, the release workflow fails at verify, not at publish.
  • v0.2.1-style `skip-existing: true` on the PyPI upload steps still applies, so if one package fails mid-publish the rerun is safe.

…ages

Bumps 0.2.1 -> 0.2.2 on every package that ships to a registry, in
lockstep. The v0.2.1 G5 drift guard enforces the three Python
__version__ constants match their pyproject.toml siblings, and the
publish.yml verify step refuses to upload if any of the six drifts
from the release tag.

Python (pyproject.toml + __init__.py __version__, both sides):
  - rag-forge-core          0.2.1 -> 0.2.2
  - rag-forge-evaluator     0.2.1 -> 0.2.2
  - rag-forge-observability 0.2.1 -> 0.2.2

npm (package.json "version"):
  - @rag-forge/cli          0.2.1 -> 0.2.2
  - @rag-forge/mcp          0.2.1 -> 0.2.2
  - @rag-forge/shared       0.2.1 -> 0.2.2

CHANGELOG: dated the v0.2.2 entry 2026-04-15 (removes "unreleased").

The five v0.2.2 workstreams (G1-G5) already merged to main — see
PRs #36-#40. This PR is the final step before cutting the GitHub
Release that triggers publish.yml.

Once merged, the release workflow:
  1. twine check + check-wheel-contents on every Python wheel
  2. G1 contract tests (iterate real ragas base classes)
  3. G5 __version__ drift guard (auto-discovers packages)
  4. OIDC push to PyPI
  5. NPM_TOKEN push to npm (pnpm publish --no-git-checks)
@coderabbitai

coderabbitai Bot commented Apr 15, 2026

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: d4398c06-ea86-4934-a0d7-d23324b57d35

📥 Commits

Reviewing files that changed from the base of the PR and between da5e6a5 and 51c6326.

📒 Files selected for processing (10)
  • CHANGELOG.md
  • packages/cli/package.json
  • packages/core/pyproject.toml
  • packages/core/src/rag_forge_core/__init__.py
  • packages/evaluator/pyproject.toml
  • packages/evaluator/src/rag_forge_evaluator/__init__.py
  • packages/mcp/package.json
  • packages/observability/pyproject.toml
  • packages/observability/src/rag_forge_observability/__init__.py
  • packages/shared/package.json
📜 Recent review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
  • GitHub Check: RAG Quality Gate
  • GitHub Check: Lint, Typecheck & Test
🔇 Additional comments (10)
packages/core/src/rag_forge_core/__init__.py (1)

3-3: Version constant bump is correct and aligned with release intent.
Looks good for the 0.2.2 lockstep release update.

packages/evaluator/src/rag_forge_evaluator/__init__.py (1)

3-3: __version__ update is correct for the patch release.
No issues in this segment.

CHANGELOG.md (1)

3-3: Release marker update is accurate and ready to ship.
Dating 0.2.2 as 2026-04-15 is consistent with this release-prep PR.

packages/cli/package.json (1)

3-3: CLI package version bump is correct.
This change cleanly matches the lockstep 0.2.2 release objective.

packages/evaluator/pyproject.toml (1)

3-3: Evaluator pyproject.toml version bump is correct.
No issues found in this changed segment.

packages/mcp/package.json (1)

3-3: MCP package version update is correct.
This is aligned with the monorepo lockstep release bump.

packages/core/pyproject.toml (1)

3-3: Core package version bump is correct for 0.2.2.
No concerns with this segment.

packages/observability/src/rag_forge_observability/__init__.py (1)

5-5: Observability module version constant is correctly updated.
Looks good for the lockstep patch release.

packages/shared/package.json (1)

3-3: Version bump is correct and scoped.

Line 3 cleanly updates @rag-forge/shared to 0.2.2, aligned with the lockstep release objective and with no unintended manifest drift.

packages/observability/pyproject.toml (1)

3-3: Lockstep Python package version update looks good.

Line 3 updates rag-forge-observability to 0.2.2 exactly as expected for this release-only PR.


Summary by CodeRabbit

  • Chores
    • Released version 0.2.2 with updates to all packages including CLI, Core, Evaluator, MCP, Observability, and Shared.

Walkthrough

Version bumped from 0.2.1 to 0.2.2 across all packages. Release date marked as 2026-04-15 in CHANGELOG. Updates include package manifests (package.json, pyproject.toml) and version constants in Python init.py files.

Changes

Cohort / File(s) Summary
Release Metadata
CHANGELOG.md
Release date for v0.2.2 marked as (2026-04-15) instead of (unreleased).
Node.js Package Versions
packages/cli/package.json, packages/mcp/package.json, packages/shared/package.json
Version field incremented from 0.2.1 to 0.2.2 in all npm package manifests.
Python Core Package
packages/core/pyproject.toml, packages/core/src/rag_forge_core/__init__.py
Version updated from 0.2.1 to 0.2.2 in project metadata and module constant.
Python Evaluator Package
packages/evaluator/pyproject.toml, packages/evaluator/src/rag_forge_evaluator/__init__.py
Version updated from 0.2.1 to 0.2.2 in project metadata and module constant.
Python Observability Package
packages/observability/pyproject.toml, packages/observability/src/rag_forge_observability/__init__.py
Version updated from 0.2.1 to 0.2.2 in project metadata and module constant.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Poem

🐰 Hop, hop, hooray! A version so neat,
From 0.2.1 to 0.2.2, the release is complete!
Across every package, we bumped with care,
Honest measurements fixed, beyond compare! ✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically describes the main change: a lockstep version bump from 0.2.1 to 0.2.2 across six packages in preparation for a release.
Description check ✅ Passed The description is comprehensive and directly related to the changeset, clearly explaining the version bumps across six packages, the CHANGELOG update, and the release workflow context.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/release-v0.2.2

Comment @coderabbitai help to get the list of available commands and usage tips.

@hallengray hallengray merged commit 8f45df5 into main Apr 15, 2026
3 checks passed
@hallengray hallengray deleted the chore/release-v0.2.2 branch April 15, 2026 23:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant