Skip to content

Release v3.90.0 - #2074

Merged
JamesRobert20 merged 1 commit into
mainfrom
release/v3.90.0
Oct 17, 2026
Merged

JamesRobert20 merged 1 commit into
mainfrom
release/v3.90.0

Conversation

@JamesRobert20

Copy link
Copy Markdown
Contributor

Summary

Release preparation for v3.90.0. This PR includes the final version bump, changelog updates, Marketplace README updates, and announcement changes.

  • Version 3.90.0 on the stable even-minor line, cut from main at a06127157.
  • Changelog covers the 40 pull requests merged after v3.88.0.
  • Announcement highlights: GitHub Copilot and IO Intelligence providers, Gemini 4 Argon and GPT-6 Luna (also on Zoo Gateway), tool-loop stops, and reasoning/streaming fixes.

Test plan

  • Confirm src/package.json is 3.90.0 and CHANGELOG.md heading is ## [3.90.0].
  • Review the three English announcement highlights and the translated README / chat strings.
  • Let the release validation workflow and required PR checks pass.
  • Approve this PR before any tag is pushed.
  • After approval, tag v3.90.0 on this branch tip and approve the marketplace deployment.
  • Add this PR to the merge queue only after that deployment succeeds.

@coderabbitai

coderabbitai Bot commented Oct 17, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Repository: Zoo-Code-Org/Zoo-Code/.coderabbit.yaml
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: 52dd235a-987a-41dc-ae5d-a5e0e41228e1
📥 Commits

Reviewing files that changed from the base of the PR and between a061271 and baf1935.

📒 Files selected for processing: 41
  • CHANGELOG.md
  • README.md
  • locales/ca/README.md
  • locales/de/README.md
  • locales/es/README.md
  • locales/fr/README.md
  • locales/hi/README.md
  • locales/id/README.md
  • locales/it/README.md
  • locales/ja/README.md
  • locales/ko/README.md
  • locales/nl/README.md
  • locales/pl/README.md
  • locales/pt-BR/README.md
  • locales/ru/README.md
  • locales/tr/README.md
  • locales/vi/README.md
  • locales/zh-CN/README.md
  • locales/zh-TW/README.md
  • src/CHANGELOG.md
  • src/core/webview/ClineProvider.ts
  • src/package.json
  • webview-ui/src/components/chat/__tests__/Announcement.spec.tsx
  • webview-ui/src/i18n/locales/ca/chat.json
  • webview-ui/src/i18n/locales/de/chat.json
  • webview-ui/src/i18n/locales/en/chat.json
  • webview-ui/src/i18n/locales/es/chat.json
  • webview-ui/src/i18n/locales/fr/chat.json
  • webview-ui/src/i18n/locales/hi/chat.json
  • webview-ui/src/i18n/locales/id/chat.json
  • webview-ui/src/i18n/locales/it/chat.json
  • webview-ui/src/i18n/locales/ja/chat.json
  • webview-ui/src/i18n/locales/ko/chat.json
  • webview-ui/src/i18n/locales/nl/chat.json
  • webview-ui/src/i18n/locales/pl/chat.json
  • webview-ui/src/i18n/locales/pt-BR/chat.json
  • webview-ui/src/i18n/locales/ru/chat.json
  • webview-ui/src/i18n/locales/tr/chat.json
  • webview-ui/src/i18n/locales/vi/chat.json
  • webview-ui/src/i18n/locales/zh-CN/chat.json
  • webview-ui/src/i18n/locales/zh-TW/chat.json

Included review availability: This review used your included allowance. Your plan provides up to 8 included reviews per hour; 7 remain after this review.

📜 Recent review details
⏰ Context from checks skipped due to timeout: 1
  • GitHub Check: publish-stable
🧰 Additional context used
📚 Code guidelines: 2
AGENTS.md — unknown
CHANGELOG.md — unknown
📓 Path-based instructions: 9
For persisted settings, verify the complete schema/storage/runtime/webview round trip, shared default semantics, and focused true plus false/unset tests.

⚙️ CodeRabbit configuration file

Files:

  • src/core/webview/ClineProvider.ts
Enforce repository policy: routine PRs must not add changesets or edit changelogs except during release preparation.

⚙️ CodeRabbit configuration file

Files:

  • src/CHANGELOG.md
  • CHANGELOG.md
Require regression coverage at the lowest valid harness with behavior-focused assertions, including relevant negative, error, false/unset, and boundary cases.

⚙️ CodeRabbit configuration file

Files:

  • webview-ui/src/components/chat/__tests__/Announcement.spec.tsx
Check strict typing and exhaustive behavior across normal, boundary, error, cancellation, retry, and compatibility paths.

⚙️ CodeRabbit configuration file

Files:

  • src/core/webview/ClineProvider.ts
  • webview-ui/src/components/chat/__tests__/Announcement.spec.tsx
Check React state and effect dependencies, cleanup, accessibility, i18n, and light/dark theme behavior.

⚙️ CodeRabbit configuration file

Files:

  • webview-ui/src/i18n/locales/it/chat.json
  • webview-ui/src/i18n/locales/nl/chat.json
  • webview-ui/src/i18n/locales/ja/chat.json
  • webview-ui/src/i18n/locales/zh-CN/chat.json
  • webview-ui/src/i18n/locales/pt-BR/chat.json
  • webview-ui/src/i18n/locales/fr/chat.json
  • webview-ui/src/i18n/locales/vi/chat.json
  • webview-ui/src/i18n/locales/tr/chat.json
  • webview-ui/src/i18n/locales/de/chat.json
  • webview-ui/src/i18n/locales/en/chat.json
  • webview-ui/src/components/chat/__tests__/Announcement.spec.tsx
  • webview-ui/src/i18n/locales/ru/chat.json
  • webview-ui/src/i18n/locales/ko/chat.json
  • webview-ui/src/i18n/locales/es/chat.json
  • webview-ui/src/i18n/locales/ca/chat.json
  • webview-ui/src/i18n/locales/zh-TW/chat.json
  • webview-ui/src/i18n/locales/hi/chat.json
  • webview-ui/src/i18n/locales/id/chat.json
  • webview-ui/src/i18n/locales/pl/chat.json
Verify extension/webview contracts, cancellation and error propagation, VS Code lifecycle correctness, and behavior under retries and partial failure.

⚙️ CodeRabbit configuration file

Files:

  • src/package.json
  • src/core/webview/ClineProvider.ts
  • src/CHANGELOG.md
Act as an adversarial second-opinion reviewer.

⚙️ CodeRabbit configuration file

Files:

  • src/package.json
  • webview-ui/src/i18n/locales/it/chat.json
  • webview-ui/src/i18n/locales/nl/chat.json
  • webview-ui/src/i18n/locales/ja/chat.json
  • webview-ui/src/i18n/locales/zh-CN/chat.json
  • locales/vi/README.md
  • locales/de/README.md
  • locales/id/README.md
  • webview-ui/src/i18n/locales/pt-BR/chat.json
  • webview-ui/src/i18n/locales/fr/chat.json
  • README.md
  • src/core/webview/ClineProvider.ts
  • webview-ui/src/i18n/locales/vi/chat.json
  • locales/ru/README.md
  • webview-ui/src/i18n/locales/tr/chat.json
  • webview-ui/src/i18n/locales/de/chat.json
  • webview-ui/src/i18n/locales/en/chat.json
  • locales/ca/README.md
  • locales/ja/README.md
  • locales/ko/README.md
  • webview-ui/src/components/chat/__tests__/Announcement.spec.tsx
  • locales/pl/README.md
  • webview-ui/src/i18n/locales/ru/chat.json
  • locales/es/README.md
  • locales/fr/README.md
  • webview-ui/src/i18n/locales/ko/chat.json
  • webview-ui/src/i18n/locales/es/chat.json
  • locales/zh-TW/README.md
  • webview-ui/src/i18n/locales/ca/chat.json
  • locales/hi/README.md
  • webview-ui/src/i18n/locales/zh-TW/chat.json
  • webview-ui/src/i18n/locales/hi/chat.json
  • webview-ui/src/i18n/locales/id/chat.json
  • locales/tr/README.md
  • locales/nl/README.md
  • locales/it/README.md
  • webview-ui/src/i18n/locales/pl/chat.json
  • locales/pt-BR/README.md
  • src/CHANGELOG.md
  • CHANGELOG.md
  • locales/zh-CN/README.md
Source excerpt: CHANGELOG: Do NOT update `CHANGELOG.md` or `src/CHANGELOG.md` in individual PRs.

📄 CodeRabbit inference engine (AGENTS.md)

Files:

  • src/CHANGELOG.md
  • CHANGELOG.md
Applicability reference: AGENTS.md: # AGENTS.md CHANGELOG: Do NOT update `CHANGELOG.md` or `src/CHANGELOG.md` in individual PRs.

📄 CodeRabbit inference engine (CHANGELOG.md)

Files:

  • src/CHANGELOG.md
  • CHANGELOG.md
🪛 GitHub Check: mutation-diff
src/core/webview/ClineProvider.ts

[warning] 329-329: Mutation test advisory
src/core/webview/ClineProvider.ts:329: Survived StringLiteral mutant (replacement: ""). See the job summary for the complete list and resolution guidance.

🪛 LanguageTool
locales/pl/README.md

[grammar] ~50-~50: Błędna końcówka przypadku. Powinno być: "argony"
Context: ...GPT-6 Luna jest w OpenCode Go. Gemini 4 Argon i GPT-6 Luna są też w Zoo Gateway. - 🧭...

(SKLADNIA_LICZEBNIKA)

[misspelling] ~52-~52: Ten skrót piszemy z kropką: "LM."
Context: ...owuje rozumowanie z llama.cpp, Ollama i LM Studio. Codex zachowuje zaszyfrowane ro...

(SKROTY_Z_KROPKA)

[style] ~52-~52: Zbędna kalka z angielskiego. Po polsku funkcjonuje już inny przyimek o tym samym znaczeniu, też zapożyczony z łaciny: "kontra".
Context: ...e widzisz. Strumienie modelu językowego VS Code używają guarded recovery, gdy stru...

(VS)

locales/tr/README.md

[misspelling] ~50-~50: Söz ve sayı arasında defis yoqtur: "v-3"
Context: ## v3.90.0'daki Yenilikler - ✨ **Sağlayıcıla...

(NUMBER_BEFORE_DEFIS_MISSING)

[misspelling] ~54-~54: Söz ve sayı arasında defis yoqtur: "R-1"
Context: ... görünür ve thinking token'lar sayılır. R1 anahtarı llama.cpp, Ollama ve LM Studio...

(NUMBER_BEFORE_DEFIS_MISSING)

locales/it/README.md

[uncategorized] ~52-~52: L’asterisco si usa per un’omissione nel numero di tre consecutivi: "***".
Context: ## Novità in v3.90.0 - ✨ Provider e modelli: GitHub Copilot ora...

(GR_09_001)

[uncategorized] ~53-~53: L’asterisco si usa per un’omissione nel numero di tre consecutivi: "***".
Context: ...-6 Luna sono anche su Zoo Gateway. - 🧭 Esecuzione dei tool: Ripetere la stess...

(GR_09_001)

[uncategorized] ~54-~54: L’asterisco si usa per un’omissione nel numero di tre consecutivi: "***".
Context: ...dei comandi che invii direttamente. - ⚡ Ragionamento e streaming: Il pensiero ...

(GR_09_001)

locales/pt-BR/README.md

[style] ~52-~52: Três frases seguidas começam com a mesma palavra. Considere reformular a frase ou use um dicionário para encontrar um sinônimo.
Context: ...rtex. O GPT-6 Luna está no OpenCode Go. O Gemini 4 Argon e o GPT-6 Luna também es...

(PORTUGUESE_WORD_REPEAT_BEGINNING_RULE)

[style] ~54-~54: Para conferir mais clareza ao seu texto, evite pleonasmos.
Context: ...Codex mantém o raciocínio criptografado junto com o resumo que você vê. Os streams de mod...

(REDUNDANCY_JUNTO_COM)

🔇 Additional comments: 41
CHANGELOG.md: 1

3-7: CHANGELOG.md edits violate repository policy.

This file is changed in the diff. This PR is a release-preparation PR, and AGENTS.md says the bulk-entry exception applies to such PRs. The policy forbids changelog edits only in individual PRs. The PR objectives describe release preparation, so the edit is allowed.

src/CHANGELOG.md: 1

3-7: The src/CHANGELOG.md edit is allowed. The PR is a release-preparation PR, which is the stated exception.

src/core/webview/ClineProvider.ts: 1

329-329: LGTM!

src/package.json: 1

6-6: LGTM!

webview-ui/src/components/chat/__tests__/Announcement.spec.tsx: 1

17-17: LGTM!

Also applies to: 35-41, 57-71

README.md: 1

49-49: LGTM!

Also applies to: 51-53

locales/ca/README.md: 1

50-50: LGTM!

Also applies to: 52-54

locales/de/README.md: 1

50-50: LGTM!

Also applies to: 52-54

locales/es/README.md: 1

50-50: LGTM!

Also applies to: 52-54

locales/fr/README.md: 1

50-50: LGTM!

Also applies to: 52-54

locales/hi/README.md: 1

49-49: LGTM!

Also applies to: 51-53

locales/id/README.md: 1

49-49: LGTM!

Also applies to: 51-53

locales/it/README.md: 1

50-50: LGTM!

Also applies to: 52-54

locales/ja/README.md: 1

49-49: LGTM!

Also applies to: 51-53

locales/ko/README.md: 1

48-48: LGTM!

Also applies to: 50-52

locales/nl/README.md: 1

50-50: LGTM!

Also applies to: 52-54

locales/pl/README.md: 1

48-48: LGTM!

Also applies to: 50-52

locales/pt-BR/README.md: 1

50-50: LGTM!

Also applies to: 52-54

locales/ru/README.md: 1

50-50: LGTM!

Also applies to: 52-54

locales/tr/README.md: 1

50-50: LGTM!

Also applies to: 52-54

locales/vi/README.md: 1

49-49: LGTM!

Also applies to: 51-53

locales/zh-CN/README.md: 1

46-46: LGTM!

Also applies to: 48-50

locales/zh-TW/README.md: 1

46-46: LGTM!

Also applies to: 48-50

webview-ui/src/i18n/locales/ca/chat.json: 1

346-349: LGTM!

webview-ui/src/i18n/locales/de/chat.json: 1

346-349: LGTM!

webview-ui/src/i18n/locales/en/chat.json: 1

365-368: LGTM!

webview-ui/src/i18n/locales/es/chat.json: 1

346-349: LGTM!

webview-ui/src/i18n/locales/fr/chat.json: 1

346-349: LGTM!

webview-ui/src/i18n/locales/hi/chat.json: 1

346-349: LGTM!

webview-ui/src/i18n/locales/id/chat.json: 1

375-378: LGTM!

webview-ui/src/i18n/locales/it/chat.json: 1

346-349: LGTM!

webview-ui/src/i18n/locales/ja/chat.json: 1

346-349: LGTM!

webview-ui/src/i18n/locales/ko/chat.json: 1

346-349: LGTM!

webview-ui/src/i18n/locales/nl/chat.json: 1

319-322: LGTM!

webview-ui/src/i18n/locales/pl/chat.json: 1

346-349: LGTM!

webview-ui/src/i18n/locales/pt-BR/chat.json: 1

346-349: LGTM!

webview-ui/src/i18n/locales/ru/chat.json: 1

320-323: LGTM!

webview-ui/src/i18n/locales/tr/chat.json: 1

347-350: LGTM!

webview-ui/src/i18n/locales/vi/chat.json: 1

347-350: LGTM!

webview-ui/src/i18n/locales/zh-CN/chat.json: 1

347-350: LGTM!

webview-ui/src/i18n/locales/zh-TW/chat.json: 1

368-371: LGTM!

📝 Summary

Summary by CodeRabbit

  • New Features
    • Zoo Code 3.90.0 adds provider and model options.
  • Improvements
    • Tool execution now includes safeguards against repeated calls, clearer completion behavior, and checks to protect queued commands.
    • Reasoning and streaming updates improve how responses are processed and recovered.
  • Documentation
    • Release highlights are updated to cover version 3.90.0 in the app and across supported languages.

This update publishes Zoo Code 3.90.0 release notes, advances the package version and current announcement identifier, and replaces v3.88.0 release notes with v3.90.0 content in README files and in-app translations.

Changes: Zoo Code 3.90.0

Layer / File(s) Summary
Release changelog
CHANGELOG.md, src/CHANGELOG.md
Adds the 3.90.0 overview and categorized notes covering provider and model additions, tool execution, reasoning and streaming, task lifecycle, maintenance, dependencies, and prior-release housekeeping.
Release identity and announcement test
src/package.json, src/core/webview/ClineProvider.ts, webview-ui/src/components/chat/__tests__/Announcement.spec.tsx
Updates the package version and current announcement identifier to 3.90.0. Updates the announcement test fixture and rendering expectations.
README release notes
README.md, locales/*/README.md
Replaces the v3.88.0 notes with v3.90.0 notes in the main README and translated README files.
Translated in-app announcements
webview-ui/src/i18n/locales/*/chat.json
Updates the release announcement heading and highlights to v3.90.0 across the listed locales.

Priority: ➖ Normal

Estimated code review effort: 2 (Simple) | ~8 minutes

Change: Other

Merge Risk: ⚪ Minimal · up to baf19

The release updates introduce no established runtime or release-blocking defect. Zoo Gateway model availability depends on its live catalog, which was not verified.

Pre-merge checks: Passed 6 · Failed 2

Failed Failed checks: 2 warnings

Check name Status Explanation Resolution
Regression Evidence Warning The release announcement is a durable visible UI change. The PR changes latestAnnouncementId so the announcement is shown for users, and replaces the heading and three visible highlights in `webview… Add a Playwright Story Gallery visual test for the announcement dialog, preferably using the existing announcement-links story or a dedicated release-announcement story. Assert the v3.90.0 heading and representative release content, captu…
Description check Warning The description explains the release scope and lists validation steps, but it does not follow the required template. It omits the required approved GitHub Issue, completed pre-submission checklist, do… Update the description to use the required sections. Add an approved issue reference such as "Closes: #123", describe the implementation details and reviewer focus, provide completed test results and repeatable test steps, complete the pre-…
Passed Passed checks: 6 passed
Check name Status Explanation
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Security Boundaries Passed No changed path matches the security failure conditions. The only runtime change updates ClineProvider.latestAnnouncementId, which is used to identify and record the displayed announcement, not to p…
Persistence Integrity Passed No changed persistence path meets the failure condition. The PR changes release metadata and latestAnnouncementId only. The announcement consumer compares that ID with persisted `lastShownAnnounceme…
Lifecycle Resource Cleanup Passed The changed lifecycle-related code only updates ClineProvider.latestAnnouncementId. Its unchanged consumers compare the ID and save it as announcement state; the patch adds no listener, watcher, pro…
Title check Passed The title clearly identifies the main change: release preparation for version 3.90.0. It is concise and specific.
Full details: Security Boundaries

Explanation

No changed path matches the security failure conditions. The only runtime change updates ClineProvider.latestAnnouncementId, which is used to identify and record the displayed announcement, not to process input or control approvals. The other changes update the package version, tests, changelogs, README files, and localized announcement strings. The added text contains no credentials, PII, executable commands, or credential-shaped literals, and it does not alter allowlist or approval logic.

Full details: Persistence Integrity

Explanation

No changed persistence path meets the failure condition. The PR changes release metadata and latestAnnouncementId only. The announcement consumer compares that ID with persisted lastShownAnnouncementId (ClineProvider.ts:2769-2770), and the acknowledgement path still awaits the global-state write (webviewMessageHandler.ts:890-892; ClineProvider.ts:3142-3144). No changed non-awaited write, non-atomic write, missing rollback, or unpropagated persisted default is present.

Full details: Lifecycle Resource Cleanup

Explanation

The changed lifecycle-related code only updates ClineProvider.latestAnnouncementId. Its unchanged consumers compare the ID and save it as announcement state; the patch adds no listener, watcher, provider, timer, task, cancellation, disposal, restart, or resource-management behavior. All other changes are release text, translations, package metadata, or test fixtures. No changed lifecycle path can leak a resource or duplicate work.

Full details: Regression Evidence

Explanation

The release announcement is a durable visible UI change. The PR changes latestAnnouncementId so the announcement is shown for users, and replaces the heading and three visible highlights in webview-ui/src/i18n/locales/*/chat.json. Announcement.spec.tsx only uses mocked translations and exact text assertions. The PR adds no Playwright visual test or screenshot baseline for the announcement dialog. Repository UI guidance requires a *.visual.tsx snapshot for user-noticeable rendered changes.

Resolution

Add a Playwright Story Gallery visual test for the announcement dialog, preferably using the existing announcement-links story or a dedicated release-announcement story. Assert the v3.90.0 heading and representative release content, capture the required theme screenshot baseline with the repository Docker workflow, and commit the __screenshots__ baseline.

Full details: Description check

Explanation

The description explains the release scope and lists validation steps, but it does not follow the required template. It omits the required approved GitHub Issue, completed pre-submission checklist, documentation impact, contributor-guideline confirmation, and contact information. The test plan also lists unchecked actions instead of completed or reproducible test results.

Resolution

Update the description to use the required sections. Add an approved issue reference such as "Closes: #123", describe the implementation details and reviewer focus, provide completed test results and repeatable test steps, complete the pre-submission checklist, state the documentation impact, confirm the Contributor Guidelines, and add the required Discord username.

  • Fix all pre-merge checks with AI
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

❤️ Share

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

@github-actions

github-actions Bot commented Oct 17, 2026 •

Copy link
Copy Markdown
Contributor

Review status

Thanks for contributing. This comment tracks the review sequence and the next action.

Current step: Awaiting fresh human maintainer or CODEOWNER approval.

Automated review is complete for the latest commit but does not replace human approval.

Review-state labels are managed by this workflow; do not edit them manually. community-approved is managed the same way — do not add or remove it manually. It signals a fresh community code approval for the current head as an advisory priority only; maintainer review is still required.

@JamesRobert20
JamesRobert20 deployed to marketplace-production October 17, 2026 00:15 — with GitHub Actions Active
@codecov

codecov Bot commented Oct 17, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@github-actions github-actions Bot added coderabbit-review-active Required CI passed; CodeRabbit review is active awaiting-coderabbit Waiting for CodeRabbit to approve the latest commit labels Oct 17, 2026
@github-actions github-actions Bot added awaiting-maintainer CodeRabbit approved; waiting for a human maintainer and removed coderabbit-review-active Required CI passed; CodeRabbit review is active awaiting-coderabbit Waiting for CodeRabbit to approve the latest commit labels Oct 17, 2026
@JamesRobert20
JamesRobert20 added this pull request to the merge queue Oct 17, 2026
Merged via the queue into main with commit 89e3745 Oct 17, 2026
28 checks passed
@JamesRobert20
JamesRobert20 deleted the release/v3.90.0 branch October 17, 2026 00:53

This branch was successfully deployed

1 active deployment
marketplace-production — baf19351 Deployed Oct 17, 2026 by JamesRobert20 via publish-stable #60
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

awaiting-maintainer CodeRabbit approved; waiting for a human maintainer

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants