feat(mcp-cli): register gittensory_get_burden_forecast stdio proxy tool - #4229
Conversation
|
|
Caution 🟥🟥🟥🟥🟥🟥🟥🟥🟥🟥🟥🟥 🛑 Gittensory review result - fixes requiredReview updated: 2026-07-08 18:59:12 UTC
🛑 Suggested Action - Fix Blockers Review summary Nits — 5 non-blocking
CI checks failing
Review context
Contributor next steps
Signal definitions
🟩 Safe / merged · 🟦 Advisory · 🟨 Held for review · 🟥 Blocked / closed 💰 Earn for open-source contributions like this. Gittensor lets GitHub contributors earn for the work they already do — register to start earning →. Checked by Gittensory, a quiet PR intelligence layer for OSS maintainers.
|
e41ddd8 to
9adecdb
Compare
|
Superagent didn't find any vulnerabilities or security issues in this PR. |
The hosted MCP server registers gittensory_get_burden_forecast (src/mcp/server.ts), but the stdio package never did, so a maintainer running the local stdio server cannot pull the cached burden forecast (projected review load, queue-growth risk, stale-PR signals). The maintainer-triage agent profile in the stdio bin already lists the tool under recommendedTools, so registering it also reconciles that dangling reference. There is no dedicated GET route for the forecast: the API serves it as the burdenForecast / burdenForecastFreshness slice of /v1/repos/:owner/:repo/intelligence (buildRepoIntelligenceResponse in src/api/routes.ts). The new stdio tool therefore proxies that endpoint via apiGet with the standard ownerRepo input handling, returns the forecast slice with its freshness marker, and mirrors the hosted tool's not_found contract when no forecast is cached. The tool is wired through STDIO_TOOL_DESCRIPTORS so registration and the tools inventory stay in sync, and covered by a subprocess stdio test (tool listing, proxied payload, and the not_found branch) against dedicated fixture repos so the shared owner/repo intelligence fixture stays free for sibling tools. Closes JSONbored#2230
9adecdb to
153c3ac
Compare
|
Gittensory is closing this pull request on the maintainer's behalf (CI is failing (validate, validate-code)). This is an automated maintenance action — to pursue this change, please open a new pull request with the issues resolved. Closed PRs may be analyzed later to improve review accuracy, but they are not automatically reopened or re-reviewed. |
What
The hosted MCP server registers
gittensory_get_burden_forecast(src/mcp/server.ts), but the stdio package (packages/gittensory-mcp/bin/gittensory-mcp.js) never registered it, so a maintainer running the local stdio server could not pull the cached burden forecast (projected review load, queue-growth risk, stale-PR signals). Themaintainer-triageagent profile in the stdio bin already lists the tool underrecommendedTools, so registering it also reconciles that dangling reference.There is no dedicated GET route for the forecast: the API serves it as the
burdenForecast/burdenForecastFreshnessslice ofGET /v1/repos/:owner/:repo/intelligence(buildRepoIntelligenceResponseinsrc/api/routes.ts). The new stdio tool therefore proxies that endpoint viaapiGetwith the standardownerRepoinput handling, returns the forecast slice with its freshness marker, and mirrors the hosted tool'snot_foundcontract when no forecast is cached.The tool is wired through
STDIO_TOOL_DESCRIPTORS(#2233) so registration and thegittensory-mcp toolsinventory stay in sync.Deliverables
gittensory_get_burden_forecastinpackages/gittensory-mcp/bin/gittensory-mcp.jsproxying the burden-forecast data viaapiGet(served on the repo intelligence endpoint - no dedicated burden-forecast GET route exists).ownerRepoinput handling matching existing repo-scoped tools (gittensory_get_repo_context).not_foundbranch, against dedicatedacme/*fixture repos so the sharedowner/repointelligence fixture stays free for sibling tools.Validation
npm run typechecknpx vitest run test/unit/mcp-cli-*.test.ts(14 files, 110 tests - includes the descriptor/registration parity test from feat(mcp-cli): add agittensory-mcp toolscommand that lists every stdio tool + description #2233)npm run build:mcp && npm run test:mcp-packgit diff --checkCloses #2230