Updated README, architecture, and TODO to reflect full feature parity, system metrics, and registry integration.
2.2 KiB
2.2 KiB
Migration TODO List
Completed Tasks
- Initial Go project setup
- Database schema & migrations (hardcoded in
db.go) - Configuration loader (Viper)
- Auth Middleware (scoped to
/v1) - Basic Provider implementations (OpenAI, Gemini, DeepSeek, Grok)
- Streaming Support (SSE & Gemini custom streaming)
- Archive Rust files to
rustbranch - Clean root and set Go version as
main - Enhanced
helpers.gofor Multimodal & Tool Calling (OpenAI compatible) - Enhanced
server.gofor robust request conversion - Dashboard Management APIs (Clients, Tokens, Users, Providers)
- Dashboard Analytics & Usage Summary (Fixed SQL robustness)
- WebSocket for real-time dashboard updates (Hub with client counting)
- Asynchronous Request Logging to SQLite
- Update documentation (README, deployment, architecture)
- Cost Tracking accuracy (Registry integration with
models.dev) - Model Listing endpoint (
/v1/models) with provider filtering - System Metrics endpoint (
/api/system/metricsusinggopsutil) - Fixed dashboard 404s and 500s
Feature Parity Checklist (High Priority)
OpenAI Provider
- Tool Calling
- Multimodal (Images) support
- Accurate usage parsing (cached & reasoning tokens)
- Reasoning Content (CoT) support for
o1,o3(need to ensure it's parsed in responses) - Support for
/v1/responsesAPI (required for some gpt-5/o1 models)
Gemini Provider
- Tool Calling (mapping to Gemini format)
- Multimodal (Images) support
- Reasoning/Thought support
- Handle Tool Response role in unified format
DeepSeek Provider
- Reasoning Content (CoT) support
- Parameter sanitization for
deepseek-reasoner - Tool Calling support
- Accurate usage parsing (cache hits & reasoning)
Grok Provider
- Tool Calling support
- Multimodal support
- Accurate usage parsing (via OpenAI helper)
Infrastructure & Middleware
- Implement Rate Limiting (
golang.org/x/time/rate) - Implement Circuit Breaker (
github.com/sony/gobreaker)
Verification
- Unit tests for feature-specific mapping (CoT, Tools, Images)
- Integration tests with live LLM APIs