Revision history for Langertha-Knarr

0.005     2026-03-10 14:48:05Z

  - Add primary Knarr normalization modules (core-backed):
    `Langertha::Knarr::Input`, `Langertha::Knarr::Output`, `Langertha::Knarr::Metrics`.
  - Bump `Langertha` dependency to `>= 0.306`.

  - Add request policy hooks in `build_app`:
    - `before_request` hook to inspect/mutate/block requests before routing
    - `api_key_validator` hook for dynamic per-request key authorization
  - Add cross-format tool bridging between OpenAI and Anthropic request/response shapes
    (including `tools`, `tool_choice`, `tool_calls`, `tool_use`, and `tool_result`)
  - Add Hermes tool XML bridging:
    - Parse `<tool_call>{...}</tool_call>` into OpenAI `tool_calls`
    - Parse `<tool_call>{...}</tool_call>` into Anthropic `tool_use` blocks
  - Route OpenAI `tools` through Hermes-capable engines by normalizing tool schema
  - Extend proxy/unit/integration tests for hook behavior and tool-bridge paths

0.004     2026-03-03 05:22:38Z

  - Fix routing priority: passthrough before default engine fallback
  - Add passthrough-only mode (no API keys needed)
  - Add KNARR_TRACE_NAME / --trace-name for custom Langfuse trace names
  - Support LANGFUSE_BASE_URL env var (in addition to LANGFUSE_URL)
  - Strip quotes from env values (Docker --env-file compatibility)
  - Strip Accept-Encoding/Content-Encoding in passthrough (no gzip issues)
  - Rewrite POD: passthrough proxy as primary use case
  - Fix Langertha dependency version to 0.303
  - Fix author URL

0.001     2026-03-03 04:00:32Z

  - Initial release
  - Multi-format LLM proxy: OpenAI, Anthropic, Ollama
  - Passthrough mode with Langfuse tracing
  - Docker container mode with auto-detect from ENV
  - CLI: start, container, models, check, init
