Skip to content

0.7.0

Choose a tag to compare

@dgenio dgenio released this 19 May 04:31
· 210 commits to main since this release
c9468d9

What's Changed

Added

  • Explicit routing pipeline (#56) — RoutingPipeline composer with four swappable stages (retrieve → rerank → navigate → pack). Router public API unchanged; default output byte-identical to pre-refactor.
  • Optional embedding-based retrieval backend (#8) — [embeddings] extra with SentenceTransformerBackend + HybridEmbeddingRetriever. Router(embedding_backend=...) blends embedding + TF-IDF (70/30). Zero-dependency default path unchanged.
  • History-aware re-routing (#27) — Router.route(history=RouteHistory(...)) deprioritises already-called tools, boosts candidates matching recent tool-result summaries. RouteResult.history_adjustments surfaces per-item score deltas. SelectableItem gains optional depends_on / provides /
    equires fields for dependency-satisfaction scoring.
  • FastMCP CodeMode hooks (#87) — make_discovery_tool(router, catalog) and make_context_hook(context_manager) factories; framework-agnostic (no fastmcp import at runtime). Demo shows 22-tool catalog → 3-tool shortlist (86% token reduction).
  • Code-review bot reference architecture (#204) — examples/architectures/code_review_bot/: six-step PR review against a 24-tool catalog; ~28 KB diff → ~500-char summary via firewall.
  • Voice agent reference architecture (#205) — examples/architectures/voice_agent/: five-turn customer-service call, �syncio.to_thread pattern, tight per-phase budgets for sub-300 ms TTS.

Fixed

  • FastMCP hook factories raise ConfigError instead of bare ValueError (PR #233 review)
  • make_discovery_tool counts hydratable tools (not slots) for op_k (PR #233 review)
  • make_discovery_tool deep-copies input_schema to prevent catalog mutation (PR #233 review)
  • make_context_hook accepts configurable ool_name parameter (PR #233 audit)
  • FastMCP integration test coverage added (PR #233 audit)

Full changelog: https://github.com/dgenio/contextweaver/blob/main/CHANGELOG.md