[PR #6477] feat(mcp): add opt-in release notifications #7362

Open
opened 2026-11-01 21:47:19 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/morluto/rea/pull/6477
Author: @leeguooooo
Created: 10/23/2026
Status: 🔄 Open

Base: main ← Head: feat/mcp-update-notices


📝 Commits (2)

  • 294392a feat(mcp): 添加可选的新版本提醒
  • f3e1790 style: 按 oxfmt 格式化新版本提醒相关文件

📊 Changes

8 files changed (+942 additions, -13 deletions)

View changed files

📝 docs/installation.md (+7 -0)
📝 docs/mcp-contracts.md (+36 -0)
📝 src/main/deferredRuntime.ts (+4 -0)
📝 src/server/EvidenceMcpServerCore.ts (+118 -13)
➕ src/server/UpdateNotices.test.ts (+534 -0)
➕ src/server/UpdateNotices.ts (+139 -0)
📝 src/server/createServer.ts (+3 -0)
➕ tests/acceptance/setup/mcpUpdateNotices.test.ts (+101 -0)

📄 Description

Adds opt-in MCP release notices with REA_MCP_UPDATE_CHECK=1. Checks run in the background, cache results for 24 hours, send no target/session data and never install updates. Each connection attempts one notice per release without changing tool results; shutdown cancels and joins its lookups.

This PR was reduced to the notice feature only and rebuilt on current main. Unrelated JavaScript analysis, provider and test changes from earlier revisions are no longer included, so the two open review threads on those files no longer apply.

Validation at c2fa1fd5d on Node 24:

  • Typecheck, build and all 226 src/server tests passed locally, including the unit notice tests.
  • All 3 compiled notice acceptance tests passed with a 120s timeout; on a slow local run the offline and deferred cases approached or exceeded the default 30s limit under load.
  • The full test:mcp suite did not finish locally; CI is the validation for it.

Limits: AI-client notice presentation was not verified; current performance was not remeasured.

Author readiness

Human owner: @leeguooooo

  • I reviewed the final diff and relevant existing code, understand the change and its edge cases, and take responsibility for the complete PR, including AI-assisted work.
  • I checked the evidence above, confirmed it supports the current change, and recorded meaningful validation gaps.
  • I declare this PR ready for initial maintainer review.

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/morluto/rea/pull/6477 **Author:** [@leeguooooo](https://github.com/leeguooooo) **Created:** 10/23/2026 **Status:** 🔄 Open **Base:** `main` ← **Head:** `feat/mcp-update-notices` --- ### 📝 Commits (2) - [`294392a`](https://github.com/morluto/rea/commit/294392ae1a4494f196c7529b3f25d3ba620bb3ff) feat(mcp): 添加可选的新版本提醒 - [`f3e1790`](https://github.com/morluto/rea/commit/f3e1790f5de46c3dc65e5a3e2c1d8f38ccde1d4e) style: 按 oxfmt 格式化新版本提醒相关文件 ### 📊 Changes **8 files changed** (+942 additions, -13 deletions) <details> <summary>View changed files</summary> 📝 `docs/installation.md` (+7 -0) 📝 `docs/mcp-contracts.md` (+36 -0) 📝 `src/main/deferredRuntime.ts` (+4 -0) 📝 `src/server/EvidenceMcpServerCore.ts` (+118 -13) ➕ `src/server/UpdateNotices.test.ts` (+534 -0) ➕ `src/server/UpdateNotices.ts` (+139 -0) 📝 `src/server/createServer.ts` (+3 -0) ➕ `tests/acceptance/setup/mcpUpdateNotices.test.ts` (+101 -0) </details> ### 📄 Description Adds opt-in MCP release notices with `REA_MCP_UPDATE_CHECK=1`. Checks run in the background, cache results for 24 hours, send no target/session data and never install updates. Each connection attempts one notice per release without changing tool results; shutdown cancels and joins its lookups. This PR was reduced to the notice feature only and rebuilt on current `main`. Unrelated JavaScript analysis, provider and test changes from earlier revisions are no longer included, so the two open review threads on those files no longer apply. Validation at `c2fa1fd5d` on Node 24: - Typecheck, build and all 226 `src/server` tests passed locally, including the unit notice tests. - All 3 compiled notice acceptance tests passed with a 120s timeout; on a slow local run the offline and deferred cases approached or exceeded the default 30s limit under load. - The full `test:mcp` suite did not finish locally; CI is the validation for it. Limits: AI-client notice presentation was not verified; current performance was not remeasured. ## Author readiness Human owner: @leeguooooo - [x] I reviewed the final diff and relevant existing code, understand the change and its edge cases, and take responsibility for the complete PR, including AI-assisted work. - [x] I checked the evidence above, confirmed it supports the current change, and recorded meaningful validation gaps. - [x] I declare this PR ready for initial maintainer review. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#7362
No description provided.