feat(ai): add MCP transport pool#562
Conversation
|
[PHASE: IMPL] [VERDICT: READY_FOR_IMPL_EVAL] Landed FAI-7 MCP pooling primitive + Slice
Gate Evidence
Notes
Next
|
|
[PHASE: A1 SLICE REVIEW] [Tier-A supervisor sign-off — PASS] Substantive review of slice Verified against acceptance
Gate evidence accepted (wrapper-backed)check / scoped check+lint+fmt / doc-lint ( Carry-forward note for IMPL-EVAL (non-blocking)
A1 PASS → proceeding to IMPL-EVAL (separate OpenHands qwen-3.7-max session). Merge remains behind a |
|
@openhands-agent model=openrouter/qwen/qwen3.7-max output=pr-comment iterations=1500 use harness IMPL-EVAL — FAI-7 MCP pooling primitive +
|
OpenHands Agent — CompletedOPENHANDS_VERDICT: PASS Model: IMPL-EVAL Summary — Issue #463 (PR #562)SummaryIndependent IMPL-EVAL validation completed for the MCP transport pool primitive. All four decisive checks passed. The implementation is real, gates are green, lock file untouched, no type casts introduced. Changes
ValidationCheck 1: Surface + Core Placement ✅
Check 2: Acceptance Behaviors ✅
Check 3: Tests + Gates ✅ (DECISIVE)
Check 4: Lock + Casts ✅ (DECISIVE)
Check 5: A1 Carry-Forward ✅
Responses to Review CommentsNone — this is a fresh IMPL-EVAL session. Remaining Risks
VerdictAll decisive checks passed. Implementation is real, gates are green, lock untouched, no casts. OPENHANDS_VERDICT: PASS Run: https://github.com/rickylabs/netscript/actions/runs/28851696949 |
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01A1oJ8GtXwhXC4VnYomQb5m
|
[PHASE: IMPL-EVAL] [VERDICT: PASS] IMPL-EVAL Independent Validation — PR #562 (Issue #463)Check 1: Surface + Core Placement ✅
Check 2: Acceptance Behaviors ✅
Check 3: Tests + Gates ✅ (DECISIVE)
Check 4: Lock + Casts ✅ (DECISIVE)
EvidenceAll gates run fresh in this eval session. Lock file untouched. No OPENHANDS_VERDICT: PASS |
Summary
Adds the upstream
@netscript/ai/mcppooling primitive for beta.6: multi-server MCP transport reuse keyed by server id, prefixed tool names, pooled dispatch, and data-onlyui://resource extraction for downstream render seams.Scope
@netscript/aicore MCP surface (area:ai-core)Slices
ui://extraction — 39f50c2Definition of Done
ui://resource/srcextraction is exposed from@netscript/ai/mcp.plugins/aican consume the core pool without re-implementing pooling.gate:jsrdoc-lint and publish dry-run pass without--allow-slow-types.Validation
deno task check— PASS, exit 0; wrapper randeno check --quiet --unstable-kv <files>, filesSelected=2133, batches=18, failedBatches=0, findings=0.deno run --allow-read --allow-run .llm/tools/run-deno-check.ts --root packages/ai --ext ts,tsx --pretty— PASS, exit 0; filesSelected=75, batches=1, findings=0.deno run --allow-read --allow-run .llm/tools/run-deno-lint.ts --root packages/ai --ext ts,tsx --pretty— PASS, exit 0; filesSelected=75, batches=1, findings=0.deno run --allow-read --allow-run .llm/tools/run-deno-fmt.ts --root packages/ai --ext ts,tsx --pretty— PASS, exit 0; filesSelected=75, batches=1, findings=0.deno run --allow-read --allow-run .llm/tools/run-deno-doc-lint.ts --root packages/ai --pretty— PASS, exit 0; totalErrors=0;./mcp.tstotal=0.deno publish --dry-run --allow-dirtyfrompackages/ai— PASS, exit 0; no--allow-slow-types; warnings only for existing unanalyzable dynamic imports intanstack-connector.ts.deno test --allow-all packages/ai/tests/— PASS, exit 0; 78 passed, 0 failed.deno test --allow-all packages/ai/tests/mcp_test.ts— PASS, exit 0; 11 passed, 0 failed.Harness
.llm/runs/beta6-nondash--supervisor/Drift / Debt
deno task check --unstable-kvis not a supported wrapper invocation because the task already passes--unstable-kvinternally; the supporteddeno task checkgate passed and reported the underlying unstable-kv command.