Files
GopherGate/TODO.md
hobokenchicken 0ce5f4f490
Some checks failed
CI / Lint (push) Has been cancelled
CI / Test (push) Has been cancelled
CI / Build (push) Has been cancelled
docs: finalize documentation for Go migration
Updated README, architecture, and TODO to reflect full feature parity, system metrics, and registry integration.
2026-03-19 13:26:31 -04:00

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 rust branch
  • Clean root and set Go version as main
  • Enhanced helpers.go for Multimodal & Tool Calling (OpenAI compatible)
  • Enhanced server.go for 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/metrics using gopsutil)
  • 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/responses API (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