Skip to content

raise-cli v2.3.0

Choose a tag to compare

@github-actions github-actions released this 24 Mar 06:18
· 1 commit to main since this release

Last pre-monorepo release

v2.3.0 delivers a deterministic session identity model that eliminates cross-repo collisions, a CLI extension mechanism for third-party commands, and the completed pro/community package separation. This release also patches 3 security vulnerabilities and resolves 15+ bugs.

Highlights

New Features

  • Session Identity (E654) — Session IDs are now timestamp-based (S-{prefix}-{YYMMDD}-{HHMM}) with a per-project Pydantic prefix registry. Eliminates the cross-repo counter collision bug. Active session pointers are per-project (not global), and session data lives in gitignored personal/ directories with opt-in sharing.

  • CLI Extension Mechanism (RAISE-594) — Third-party CLI commands can now be registered via entry points, with collision and duplicate protection.

  • rai doctor Adapter Diagnostics (RAISE-614) — Verifies adapter availability and configuration status.

Changes

  • Session Data Path (E654) — Session tracking moved from global ~/.rai/developer.yaml to per-project .raise/rai/personal/. Tools reading the old location need updating.

  • Pattern Scope Default (RAISE-608)rai pattern add now defaults to project scope instead of personal.

Security Fixes

  • authlib 1.6.8 → 1.6.9 — 3 CVEs patched (RAISE-574)
  • PyJWT ≥ 2.12.0 — Critical crit header bypass, CVE-2026-32597 (RAISE-575)
  • astro/cloudflare/undici — 9 Snyk CVEs in docs site dependencies (RAISE-576)

Bug Fixes

  • CLAUDE.local.md references removed from close skills (RAISE-635)
  • Session-start context loss fixed — state loaded before migration (RAISE-566)
  • promote_unreleased regex handles changelog with Unreleased as last section (RAISE-547)
  • Unicode symbols crash on Windows CP1252 terminals (RAISE-554)
  • C# scanner constructor dependency extraction (RAISE-227)
  • rai init ide.type sync with agents.types[0] (RAISE-218)
  • CI container missing git (RAISE-570)
  • Regex precedence fixes in ADR and changelog parsers (RAISE-589)
  • Story-plan skill now enforces project-wide verification scope (RAISE-572)
  • Doctor callback refactored — cognitive complexity 47 → ~7 (RAISE-598)
  • SonarQube code smells batch cleanup: 8 rule categories (RAISE-541)

Known Issues

  • RAISE-634 — Docs site has broken links after architecture refactor.

Upgrade Notes

Breaking: Session Data Path Changed

Session state has moved from ~/.rai/developer.yaml (global) to .raise/rai/personal/ (per-project, gitignored). Old session data (SES-NNN format) remains readable but new sessions use the S-{prefix}-{YYMMDD}-{HHMM} format exclusively. No automatic migration — old and new coexist.

Pattern Scope Default

rai pattern add "..." now defaults to --scope project instead of --scope personal. Add --scope personal explicitly if you want the old behavior.

Contributors

  • Emilio Osorio — E654, E479, bugfixes, security patches, release prep
  • Fernando Rodriguez — RAISE-663, RAISE-635, RAISE-608 bugfixes, prefix registry
  • Rai (AI) — Co-authored across all epics and stories

Install

pip install raise-cli==2.3.0