Skip to content

Releases: routatic/proxy

Release v0.3.6

21 Jun 02:21
Immutable release. Only release title and notes can be modified.
f483ade

Choose a tag to compare

⚠️ No breaking changes detected.

Summary
This release adds full support for AWS Bedrock as a provider, including Anthropic integration, configuration updates, and extensive documentation. It also fixes a serialization issue in chat messages and refines test and code quality across the codebase.

New Features

  • Add AWS Bedrock provider with configuration and implementation.
  • Enhance AWS Bedrock provider with Anthropic support and configuration options.
  • Update AWS Bedrock provider documentation to include Anthropic Messages format support.
  • Add AWS Bedrock provider documentation updates in README and CONFIGURATION.md.

Bug Fixes

  • Fix chat message content serialization by using json.RawMessage for proper JSON handling.

Improvements

  • Refactor AWS Bedrock provider test types for consistency.
  • Update internal client opencode.go and config handling for better type safety.
  • Streamline provider integration in server.go.

Documentation

  • Expand CONFIGURATION.md and README with new provider details and examples.
  • Add docs/architecture.md and docs/howto-add-model for developer guidance.
  • Provide configs/config.example.json illustrating the new provider configuration.

Chores

  • Update internal provider aws_bedrock.go and corresponding test files.
  • Refactor internal/config/config.go and internal/client/opencode.go for maintainability.
  • Adjust internal/server/server.go to incorporate the new provider.

Release v0.3.5

20 Jun 21:25
Immutable release. Only release title and notes can be modified.

Choose a tag to compare

Fixed broken release process

Release v0.3.4

20 Jun 16:09
Immutable release. Only release title and notes can be modified.
ded7efd

Choose a tag to compare

Breaking Changes

  • None

New Features

  • Add streaming_timeout_ms to OpenCodeGoConfig and OpenCodeZenConfig for per‑request streaming timeouts.
  • Expose heartbeat_paused flag during raw Anthropic streaming to avoid keep‑alive injection into SSE frames.
  • Add IsAnthropicModel and isAnthropicNativeGo helpers that now include minimax‑m2.5/2.7/3 and qwen‑plus models.
  • Add RequestTimeout, StreamingTimeout, and StreamIdleTimeout helpers on OpenCodeClient.
  • Add walkthrough.md documenting integration and timeout configuration.

Bug Fixes

  • Fix streaming timeout handling: bind streaming body reads to the per‑attempt context so mid‑stream stalls abort.
  • Prevent panic when transformTools receives a whitespace‑only "null" schema.
  • Stop fallback chain early on parent context cancellation or deadline exceeded; do not record client cancellations as circuit‑breaker failures.
  • Correct error handling in Anthropic API calls, surface ErrStreamReadCanceled, and streamline SSE error messages.
  • Resolve lint issues in test files (discard unused return values, remove redundant type assertions).
  • Fix concurrent write handling in TestResponseWriter by using Fprintf.

Improvements

  • Harden transformTools: skip empty/whitespace names, normalize null/empty schemas, validate object type and properties, guard against nil schema objects.
  • Update ApplyDefaults to honor streaming_timeout_ms before timeout_ms when the former is unset.
  • Optimize retry logic and error handling with a dedicated APIError type.
  • Reload messaging in atomic.go now reports timeout changes immediately.
  • Add per‑byte idle‑gap enforcement via StreamIdleTimeout.

Documentation

  • Update CONFIGURATION.md and README.md with Streaming Scenario Routing and new streaming_timeout_ms config.
  • Add streaming_timeout_ms to config.example.json.
  • Expand documentation for new timeout helpers and Anthropic‑native streaming behavior.

Chores

  • Add extensive test coverage for new streaming and timeout features.
  • Update test files and remove lint warnings.
  • Minor refactorings in provider architecture and fallback logic.
  • Update CI configuration and dependency checks.

Release v0.3.3

20 Jun 13:37
Immutable release. Only release title and notes can be modified.
a6e1cf8

Choose a tag to compare

Release Notes – v0.3.3

This release resolves a critical build issue that prevented the Docker image from compiling on the latest Go version. The Dockerfile now aligns with the Go version specified in go.mod, ensuring smooth image creation and deployment.

New Features

  • None

Bug Fixes

  • Correct Dockerfile to use Go 1.25, matching go.mod and preventing go mod download failures.

Improvements

  • None

Documentation

  • None

Chores

  • Update Docker build image to golang:1.25-alpine to match project Go requirement.

Release v0.3.2

19 Jun 11:38
Immutable release. Only release title and notes can be modified.
4fe96a7

Choose a tag to compare

Routatic Proxy Release Notes

This release introduces a comprehensive update to the Go proxy server, enhancing capabilities, fixing critical issues, and improving reliability. Key changes include new provider abstractions, streaming improvements, and enhanced error handling.

Summary

  • New Features: Unified request model, streaming support for Anthropic, OpenAI, and Gemini, and improved transformer handling.
  • Bug Fixes: Resolved SSE streaming race conditions, idle watchdog errors, and format incompatibilities.
  • Improvements: Added configuration updates, stream stability tweaks, and comprehensive testing.
  • Documentation: Refactored docs and README for clarity and consistency.
  • Chores: Updated build pipelines, CI/CD workflows, and Docker publishing.

Action Items

  • Ensure all providers register correctly in server initialization.
  • Validate streaming paths with real-world scenarios.
  • Monitor health checks and error responses during deployment.

New Features

  • Implemented OpenCode providers with streaming support
  • Enhanced routing policy engine with model overrides
  • Added support for legacy environment variables

Bug Fixes

  • Fixed Anthropic tool format incompatibility
  • Improved error handling for non-retryable 4xx errors
  • Added temperature constraints for specific models

Improvements

  • Refactored module name and configuration paths
  • Updated documentation and migration guides
  • Enhanced streaming reliability and edge case handling

Documentation

  • Updated CONFIGURATION.md and README.md with new settings
  • Added detailed changelog and usage examples

Chores

  • Updated CI/CD pipelines and Docker publishing
  • Refactored internal handlers for better maintainability

This release strengthens the proxy's robustness and ensures seamless integration with modern tooling.

Release v0.3.1

18 Jun 06:19
Immutable release. Only release title and notes can be modified.
e3ba31b

Choose a tag to compare

User Safety: safe

Release v0.3.0

10 Jun 16:09
Immutable release. Only release title and notes can be modified.

Choose a tag to compare

Changelog

Breaking Changes

  • Breaking Change: The model_overrides configuration now requires explicit model names for DeepSeek V4 Pro and Flash Free variants. Previous shorthand syntaxes are no longer supported.
  • Breaking Change: Anthropic model routing now prioritizes Zen-specific endpoints over legacy Anthropic routing when IsZen is true. Existing Anthropic configurations may require updates to use model_overrides for compatibility.

New Features

  • Add full Zen model support including Claude, GPT, Gemini, and free-tier models
  • Add Claude model overrides for sonnet-4.6, opus-4.7, and haiku-4.5
  • Add DeepSeek V4 Pro Zen override to config example and default config
  • Add 49 Zen models grouped by endpoint type in models command output
  • Add MiniMax M3 and Qwen3.7 profiles to model configuration
  • Add grok-build-0.1, big-pickle, and north-mini-code-free models to config listing
  • Add test coverage for Claude, Grok, Big-Pickle, North Mini-Code-Free, and missing Go models

Bug Fixes

  • Fix endpoint classification to use Zen-specific routing (minimax uses chat completions on Zen)
  • Fix streaming/non-streaming path checks to prioritize Zen over Anthropic routing
  • Fix deprecated model names in documentation

Improvements

  • Improve model documentation with updated endpoint tables and configuration examples
  • Enhance configuration examples with DeepSeek V4 Pro/Flash Free override patterns
  • Improve models command description in README
  • Refactor endpoint classification logic for better Zen support

Documentation

  • Update MODELS.md with comprehensive Zen model documentation
  • Add model_overrides examples for DeepSeek V4 Pro and Flash Free variants
  • Update README.md with improved models command documentation

Chores

  • Refactor endpoint classification logic in internal/client/opencode.go
  • Update test coverage in internal/client/opencode_test.go
  • Refactor message handling in internal/handlers/messages.go
  • Update build configuration and dependency management

Release v0.2.9

10 Jun 14:43
Immutable release. Only release title and notes can be modified.
41b5658

Choose a tag to compare

Breaking Changes ⚠️

  • Remove deprecated models: mimo-v2-pro, mimo-v2-omni, qwen3.5-plus - these will no longer be available for routing

New Features

  • Add 3 Zen free models to model overrides: deepseek-v4-flash-free, mimo-v2.5-free, nemotron-3-ultra-free
  • Add minimax-m3 model to Anthropic endpoint routing
  • Add qwen3.7-plus model to OpenAI-compatible routing

Bug Fixes

  • Route all Qwen models (qwen3.5-plus, qwen3.6-plus, qwen3.7-plus, qwen3.7-max) to Anthropic endpoint per official documentation

Improvements

  • Update models command to match opencode-go model list and show correct endpoint types
  • Add test coverage for new model routing behavior

Documentation

  • Update config.example.json with new model configurations

Chores

  • Refactor model routing logic in opencode.go client
  • Update main.go with new model definitions and routing rules

Release v0.2.8

08 Jun 14:51
Immutable release. Only release title and notes can be modified.
8739a8c

Choose a tag to compare

This release introduces improved API key management with round-robin rotation across multiple keys, ensuring secure and efficient request distribution. New features include enhanced API key handling, automatic fallback mechanisms, and updated tests for key validation. Bug fixes address potential overflows in key counters, while improvements focus on performance and reliability. Documentation has been updated to reflect the new configuration behavior. Breaking changes are highlighted for developers to understand.

Release v0.2.7

08 Jun 13:42
Immutable release. Only release title and notes can be modified.
1a5da3d

Choose a tag to compare

This release introduces improvements to the proxy server's environment handling and conflict resolution. The new Claude Code integration now includes enhanced conflict checks and default configuration adjustments. Key updates include:

  • Improved Claude Code environment validation
  • Refined default config parsing
  • Enhanced error handling for integration scenarios

Breaking Changes: Modify environment-specific logic to accommodate new validation rules.

New Features

  • Claude Code integration for smarter conflict detection
  • Updated environment configuration parsing
  • Enhanced default settings management

Improvements

  • Faster startup with optimized initialization
  • Better performance in high-load scenarios
  • More robust logging for debugging

Documentation

  • Updated README with new configuration options
  • Added comments explaining conflict resolution logic
  • Refactored docs for clarity and consistency

Chores

  • Refactored build scripts for compatibility
  • Updated CI/CD pipeline with new validation steps
  • Added dependency updates for stability

Let's ensure the project remains stable with these changes.