Skip to content

v0.2.1 fix(mcp): live reader on the MCP pipeline + config model routing + Vertex preflight#173

Merged
pgsharma merged 1 commit into
mainfrom
fix/mcp-live-reader-0.2.1
Jun 25, 2026
Merged

v0.2.1 fix(mcp): live reader on the MCP pipeline + config model routing + Vertex preflight#173
pgsharma merged 1 commit into
mainfrom
fix/mcp-live-reader-0.2.1

Conversation

@pgsharma

Copy link
Copy Markdown
Contributor

0.2.1 — first-run fixes for the MCP/plugin surface

From real plugin feedback: a user on a Vertex-configured machine hit (1) HuggingFace 429s on the post pull and (2) the planner ignoring their model config. Root causes, all on the MCP surface that the CLI/SDK fixes in 0.1.1 missed.

Fixed

  • MCP pipeline uses the live Arctic Shift reader by default. mcp/tools.py hardcoded ArcticReader(probe_sleep_s=0.0) (HF Parquet) at four sites (_build_deps, research_plan_brief, arctic_list_months, arctic_pull_threads) — 0.1.1's live-reader default swapped the CLI + facade but never the MCP path. So MCP/plugin runs pulled posts from HF and 429'd, while preflight (which calls the resolver) reported active_reader: arctic_shift_api. All four now call config.resolve_corpus_reader(); preflight and the pipeline finally agree.
  • A config model that's a routable ref works on its own. model = "deepseek/deepseek-v4-flash" without a pinned provider was silently ignored for routing (fell through to key-order/Vertex), so a machine with stray GOOGLE_GENAI_USE_VERTEXAI resolved Google. It now routes by vendor namespace before autodetection. Pinned provider+model unchanged; a bare id still can't self-route.

Added

  • preflight/doctor flag the Vertex landmine (error): GOOGLE_GENAI_USE_VERTEXAI on but google.genai not installed → chat→Vertex and embeddings both fail on the missing SDK even with an OpenRouter key. The exact first-run failure the preamble exists to catch.

Verification

  • +6 regression tests (tests/test_firstrun_021.py): MCP _build_deps wires the resolver; config-model-alone routing (and the bare-id and provider+model cases); the Vertex preflight hint.
  • Gate green: ruff, ruff format, pyright (0 errors). Clean-room full suite: 1139 passed (local-only failures are stray ~/.config/metalworks + ~/clique/metalworks.toml deepseek configs and a populated store — absent in CI).

On merge: tag v0.2.1 → PyPI.

🤖 Generated with Claude Code

… routing + Vertex preflight (0.2.1)

Three first-run fixes from real plugin feedback (the MCP/plugin surface, not just the CLI):

- The MCP research pipeline now resolves its reader via config.resolve_corpus_reader()
  (the live Arctic Shift API default) instead of a hardcoded HF ArcticReader at four
  mcp/tools.py sites. 0.1.1's live-reader default swapped the CLI + facade but missed
  the MCP path, so plugin runs pulled posts from HuggingFace and 429'd while preflight
  reported active_reader=arctic_shift_api. Now they agree.
- A config `model` that is a routable ref (e.g. "deepseek/deepseek-v4-flash") routes on
  its own without also pinning `provider`, before key-order/Vertex autodetection — so
  setting `model` alone works (a pinned provider+model is unchanged; a bare id still
  can't self-route).
- preflight/doctor now flag (error) GOOGLE_GENAI_USE_VERTEXAI on + google extra missing,
  the exact landmine that silently routes embeddings to a missing Vertex SDK.

+6 regression tests. Clean-room full suite 1139 passed (the local failures are stray
~/.config/metalworks + ~/clique/metalworks.toml deepseek configs and a populated store).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@mintlify

mintlify Bot commented Jun 25, 2026

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
metalworks 🟢 Ready View Preview Jun 25, 2026, 8:25 AM

💡 Tip: Enable Workflows to automatically generate PRs for you.

@pgsharma pgsharma merged commit 3999bae into main Jun 25, 2026
8 checks passed
@pgsharma pgsharma deleted the fix/mcp-live-reader-0.2.1 branch June 25, 2026 08:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants