v1.5.0-prerelease4 cut#2877
Conversation
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (61)
📝 WalkthroughSummary by CodeRabbitRelease Notes
WalkthroughThis PR introduces version bumps across core (1.5.2→1.5.3) and framework (1.3.2→1.3.3) modules, adds SQLite migration logic to drop legacy Changes
Estimated code review effort🎯 4 (Complex) | ⏱️ ~40 minutes Suggested reviewers
Poem
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 golangci-lint (2.11.4)level=error msg="[linters_context] typechecking error: pattern ./...: directory prefix . does not contain main module or its selected dependencies" Comment |
|
|
🧪 Test Suite AvailableThis PR can be tested by a repository admin. |
Confidence Score: 5/5Safe to merge — the SQLite migration fix is correct and well-tested; the only remaining finding is a P2 unused-prop style issue. The core migration fix is sound: DDL operations run inside a GORM transaction (UseTransaction: true), SQLite supports transactional DDL, and post-drop verification is in place. New tests cover both VK/provider-config and team budget column drops on SQLite with FK-corruption assertions. All other findings are P2 or lower. No files require special attention. Important Files Changed
|
* v1.5.0-prerelease4 cut * fix: handle sqlite legacy budget column drops --------- Co-authored-by: Dan Piths <85949566+danpiths@users.noreply.github.com>

Summary
This release (core v1.5.3, framework v1.3.3, transports v1.5.0-prerelease4, Helm chart v2.1.2) delivers a broad set of provider compatibility improvements, governance infrastructure for team budgets, SQLite migration correctness fixes, and UI polish across logs, virtual keys, and teams views.
Changes
displayparameter handling, andxhigheffort mapping for Anthropic's new modelresponse_formatand structured output support across chat completions and Responses API (thanks @emirhanmutlu-natuvion!)title,readOnly,destructive,idempotent, andopenWorldannotations in bidirectional MCP ↔ Bifrost tool conversionALTER TABLE RENAMEpropagated into FK references in other tables, corrupting them. Replaced the rename-based column drop strategy with a dump-data → drop-original → recreate-clean → restore-data approach. FK constraints are now created after legacy column drops to prevent propagation corruption. AddedassertNoCorruptedFKReferencestest helper and two new migration testssend on closed channelpanics by leaving channels open and exiting workers via the done signaltool_resultoutput into a newline-joined string so strict upstreams no longer reject with HTTP 400 (thanks @martingiguere!)delta.content=""the same asnilso synthesis chunks retainfinish_reasonand token usage is correctly attributedmessage_stopevent for Anthropic invoke stream; case-insensitiveanthropic-betaheader merging (thanks @tefimov!)thinkingLevelparameters across round-trip conversions and correct finish reason mappingclaude-vscodetoClaudeCLIuser agent identifiersinvalid_grantandunauthorized_clientas permanent errors; don't mark OAuth config expired on transient refresh failuresinsecuretotruewhen omitted; update semconv to v1.40.0; include fallbacks in emitted metricsencryption_keyis now optional; fixedencryptionKeySecrettemplate condition to check.name; removed stale Okta role-mapping note from docscall_idshown in Responses message headers; tool resultnameshown in message metadata; timeline widget removed from detail sidebar; log table column widths rebalanced; message font size reduced to 12pxTeamsViewwith a paginated, searchableTeamsTablewith RBAC guards, polling, and offset snap-back on deletebudget_lines/rate_limitsfield name references in access profile hooks and detail sheet; fixedinertattribute typeType of change
Affected areas
How to test
Validate team budgets by creating a team, assigning a budget, and confirming spend tracking increments atomically under concurrent load. Validate OCR requests by submitting an OCR-type request and confirming pricing metadata and logs appear correctly.
Breaking changes
Virtual key provider and MCP configs are now deny-by-default — empty configs block all access. Existing deployments are automatically migrated to preserve current behavior, but any programmatic creation of virtual keys with empty provider/MCP configs will now result in denied access rather than open access.
Security considerations
invalid_grantandunauthorized_clientonly, preventing premature token invalidation on transient network failures.encryption_keyis now optional in the Helm chart; deployments omitting it will operate without at-rest encryption — operators should explicitly set this field in production.Checklist
docs/contributing/README.mdand followed the guidelines