chore(deps): bump dependencies across monorepo#61
Conversation
📝 WalkthroughWalkthroughDependency version bumps across multiple packages in the monorepo and a small API adapter change switching the groq provider integration from Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Minor/patch: elysia, turbo, prettier, oxlint, typescript-eslint, motion, react-hook-form, @tanstack/react-query, and others. Major: @tanstack/ai* 0.2→0.3, @hookform/resolvers 4→5, lucide-react 0.544→0.563, unplugin-icons 22→23, zod 3→4, vis-timeline 7→8, libphonenumber-metadata-generator 1→2. Adapt Groq provider to @tanstack/ai-openai v0.3 breaking change (openaiText → createOpenaiChat for custom API keys). Add elysia as web devDependency to fix Eden Treaty type mismatch.
12efc65 to
b4d6413
Compare
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Fix all issues with AI agents
In `@apps/api/src/infra/ai/adapter.ts`:
- Around line 50-54: The call to createOpenaiChat in adapter.ts uses
process.env.GROQ_API_KEY! with a non-null assertion; validate GROQ_API_KEY
before calling createOpenaiChat (e.g., in the function or module that constructs
the client), and if it's missing either throw a clear error or handle a fallback
path. Locate the createOpenaiChat invocation (the "llama-3.3-70b-versatile" /
process.env.GROQ_API_KEY! call) and replace the direct non-null assertion with a
runtime check that ensures process.env.GROQ_API_KEY is defined, then pass the
validated key to createOpenaiChat or return/throw a descriptive error if absent.
| return createOpenaiChat( | ||
| "llama-3.3-70b-versatile" as "gpt-4o-mini", | ||
| process.env.GROQ_API_KEY!, | ||
| { baseURL: "https://api.groq.com/openai/v1" } | ||
| ); |
There was a problem hiding this comment.
Validate environment variable before use to avoid runtime errors.
The non-null assertion (!) on process.env.GROQ_API_KEY will throw a runtime error if the environment variable is not set. Consider adding validation or a fallback.
🛡️ Proposed fix to add validation
case "groq":
// Groq uses OpenAI-compatible API with custom model name
+ if (!process.env.GROQ_API_KEY) {
+ throw new Error("GROQ_API_KEY environment variable is required for groq provider");
+ }
return createOpenaiChat(
"llama-3.3-70b-versatile" as "gpt-4o-mini",
- process.env.GROQ_API_KEY!,
+ process.env.GROQ_API_KEY,
{ baseURL: "https://api.groq.com/openai/v1" }
);🤖 Prompt for AI Agents
In `@apps/api/src/infra/ai/adapter.ts` around lines 50 - 54, The call to
createOpenaiChat in adapter.ts uses process.env.GROQ_API_KEY! with a non-null
assertion; validate GROQ_API_KEY before calling createOpenaiChat (e.g., in the
function or module that constructs the client), and if it's missing either throw
a clear error or handle a fallback path. Locate the createOpenaiChat invocation
(the "llama-3.3-70b-versatile" / process.env.GROQ_API_KEY! call) and replace the
direct non-null assertion with a runtime check that ensures
process.env.GROQ_API_KEY is defined, then pass the validated key to
createOpenaiChat or return/throw a descriptive error if absent.
| "unplugin-icons": "^22.5.0", | ||
| "vite": "^7.3.0", | ||
| "typescript-eslint": "^8.54.0", | ||
| "unplugin-icons": "^23.0.1", |
There was a problem hiding this comment.
🧩 Analysis chain
🌐 Web query:
unplugin-icons v23.0.0 breaking changes changelog migration
💡 Result:
unplugin-icons v23.0.0 (released Jan 14, 2026): breaking changes + migration notes
Breaking changes
- Vue 2 support removed
- Vue 2 compiler support and Vue 2 examples/docs were removed; Vue 2–specific peer deps (e.g.
vue-template-compiler) were dropped. [2][3]
Migration: If you’re on Vue 2, you must stay on v22.x (or earlier) or migrate your app to Vue 3 before upgrading tounplugin-icons@23. [2][3]
- Package is now ESM-only
- CJS (
require) entry points were removed frompackage.jsonexports, and the build output is ESM-only. [2][4]
Migration: - Convert any consuming config/code that uses
require()to ESMimport. - If you must stay in CJS, switch to dynamic import (Node):
const mod = await import('unplugin-icons/vite'). [2][4]
Official changelog / release notes
- GitHub release notes for v23.0.0 (includes the “Breaking Changes” section). [2]
Sources:
[1] unplugin-icons repository README (context) (github.com)
[2] GitHub Release v23.0.0 notes (github.com)
[3] PR #430 “remove Vue 2 support” (github.com)
[4] Commit “move to ESM-only” (exports/build changes) (github.com)
Citations:
- 1: https://github.com/unplugin/unplugin-icons
- 2: https://github.com/unplugin/unplugin-icons/releases/tag/v23.0.0
- 3: fix!: remove Vue 2 support unplugin/unplugin-icons#430
- 4: unplugin/unplugin-icons@89f2410
Confirm ESM compatibility and Vue 3 usage for unplugin-icons v23 upgrade.
unplugin-icons v23.0.0 introduces two breaking changes:
- Vue 2 support removed; projects must use Vue 3
- Package is now ESM-only; CommonJS requires dynamic import
While the build passes, explicitly verify the project uses Vue 3 and is configured for ESM (or uses dynamic imports if CJS is needed).
|
🎉 This PR is included in version 0.16.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
Summary
openaiText→createOpenaiChat)elysiaas web devDependency to fix Eden Treaty type mismatchTest plan
bun run type-check— passesbun run lint— 0 errorsbun run build— all apps build successfullycd apps/api && bun test— 64/64 tests passSummary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.