Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Adds operator-facing architecture documentation describing vMCP scalability limits, hardcoded constraints, and operational considerations, and links it from the existing architecture docs index.
Changes:
- Added a new architecture doc detailing vMCP limits (per-pod cache cap, TTL behavior, Redis considerations, FD constraints, restart implications).
- Updated
docs/arch/README.mdindex to include the new scalability doc. - Linked the new doc from the “Related Documentation” section in the vMCP architecture doc.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| docs/arch/README.md | Adds the new scalability document to the architecture documentation index. |
| docs/arch/13-vmcp-scalability.md | Introduces detailed scalability/constraints documentation for vMCP deployments. |
| docs/arch/10-virtual-mcp-architecture.md | Adds a cross-link to the new scalability/constraints document. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #5025 +/- ##
==========================================
+ Coverage 69.07% 69.09% +0.01%
==========================================
Files 555 555
Lines 73288 73288
==========================================
+ Hits 50626 50639 +13
+ Misses 19644 19631 -13
Partials 3018 3018 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Add docs/arch/13-vmcp-scalability.md covering all known vMCP capacity limits surfaced in the code: per-pod session cache cap (1,000 sessions, LRU eviction), session TTL behaviour (30 min vMCP / 2 h proxy, sliding window in Redis via GETEX), session GC triggers, file descriptor constraints, Redis sizing and timeout defaults, stateful backend data loss on pod restart, and a hardcoded-limits reference table with source file pointers. Closes #4975
JAORMX
approved these changes
Apr 23, 2026
github-actions Bot
added a commit
to stacklok/docs-website
that referenced
this pull request
Apr 23, 2026
Add a Capacity limits section to the vMCP scaling guide covering the per-pod 1,000-session LRU cache, 30-minute inactivity TTL with Redis sliding-window refresh, file-descriptor planning, Redis sizing and default timeouts, and stateful-backend data loss on pod restart. Derived from upstream PR stacklok/toolhive#5025 and verified against source at the v0.24.1 tag. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
1 task
rdimitrov
pushed a commit
to stacklok/docs-website
that referenced
this pull request
Apr 23, 2026
* Update stacklok/toolhive to v0.24.1 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Refresh reference assets for toolhive v0.24.1 * Document vMCP capacity limits for v0.24.1 Add a Capacity limits section to the vMCP scaling guide covering the per-pod 1,000-session LRU cache, 30-minute inactivity TTL with Redis sliding-window refresh, file-descriptor planning, Redis sizing and default timeouts, and stateful-backend data loss on pod restart. Derived from upstream PR stacklok/toolhive#5025 and verified against source at the v0.24.1 tag. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Editorial fixes to vMCP capacity limits section - Remove inaccurate claim that Redis client timeouts are tunable via sessionStorage CRD fields; the CRD does not expose them. - Rephrase two mid-sentence spaced hyphens per the project style guide. - Expand TTL acronym on first use. - Flip one passive-voice sentence to active voice. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> --------- Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com> Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add docs/arch/13-vmcp-scalability.md covering all known vMCP capacity limits surfaced in the code: per-pod session cache cap (1,000 sessions, LRU eviction), session TTL behaviour (30 min vMCP / 2 h proxy, sliding window in Redis via GETEX), session GC triggers, file descriptor constraints, Redis sizing and timeout defaults, stateful backend data loss on pod restart, and a hardcoded-limits reference table with source file pointers.
Fixes #4975
Type of change
Test plan
task test)task test-e2e)task lint-fix)API Compatibility
v1beta1API, OR theapi-break-allowedlabel is applied and the migration guidance is described above.Changes
Does this introduce a user-facing change?
Implementation plan
Approved implementation plan
Special notes for reviewers