# Changelog

All notable changes to `pi-sumopod-connector` will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

## [1.2.2] — 2026-06-01

### Fixed
- **`/thinking` now works for the aggregated non-OpenAI upstreams.** A live probe of SumoPod's LiteLLM proxy (`scripts/probe-thinking.mjs`) showed these models need their **native** thinking param, not OpenAI `reasoning_effort`:
  - GLM-5 / GLM-5.1 / GLM-5-turbo, Qwen 3.6 Flash / Qwen 3.7 Max, Kimi K2.6 → controlled by `enable_thinking` → `compat.thinkingFormat: "qwen"`.
  - Mimo V2.5 / V2.5 Pro → controlled by `chat_template_kwargs.enable_thinking` → `compat.thinkingFormat: "qwen-chat-template"`.
- **Corrected reasoning flags.** The probe confirmed nearly every SumoPod chat model reasons; only the GPT-4o/4.1 class and embeddings don't. `deepseek-v3-2` is reasoning again (controllable via `reasoning_effort`); models that reason always-on (DeepSeek V4, Seed 2.0, GLM-4.7, Qwen 3.6 27B, Gemma 4, MiniMax) stay `reasoning:true` with the default `reasoning_effort` path.

### Removed
- Provider-level `compat` from `registerProvider` — redundant (pi auto-detects `supportsReasoningEffort` for the `sumopod` provider) and not part of the `ProviderConfig` type. Per-model `compat.thinkingFormat` (valid on `ProviderModelConfig`) now carries the format.

## [1.2.1] — 2026-06-01

### Fixed
- **Thinking level (`/thinking`) now works.** The provider was registered without `compat`, so pi-ai's
  openai-completions client never emitted `reasoning_effort` — adjusting the thinking level had no effect on
  any model. Added `compat: { supportsReasoningEffort: true }` to both `registerProvider` calls.
- **Correct reasoning flags.** `reasoning` is now derived from the proxy's real capability
  (`model_hub.supported_openai_params` includes `reasoning_effort`) instead of the unreliable
  `supports_reasoning`. Effect: `deepseek-v4-pro`, `deepseek-v4-flash`, `qwen3.6-plus` gain adjustable
  thinking; `deepseek-v3-2` (no proxy thinking param) no longer falsely advertises it.

## [1.0.0] — 2026-05-03

### Added
- Initial release as `sumopod-pi` — SumoPod AI provider for Pi coding agent

## [1.1.0] — 2026-05-04

### Changed
- Renamed to `pi-sumopod-connector`
- Updated model catalogue — 52 models including new Gemini 3.1, GPT-5.1, Seed 2.0, Mimo V2.5, MiniMax M2.7, Kimi K2.6, GLM-5.1
- `/sumopod-key` command now applies immediately (no restart needed)
- Fixed API key storage to Pi's `auth.json` format
- Full SumoPod model catalogue with 24 models
- Support for Anthropic, OpenAI, Google, DeepSeek, BytePlus, Mimo, Z.ai, and Cloudeka models
- Correct cost metadata for Pi usage tracking
- Streaming support via OpenAI Chat Completions API
- Free tier models (Nemotron, GPT-OSS, Qwen3) until May 8, 2026
- Discount pricing for Claude Haiku (30%), DeepSeek V4 Pro (75%), Mimo (70%), Qwen 3.6 Plus (50%), GLM-5 (90%)

## [1.2.0] — 2026-06-01

### Added
- `scripts/sync-models.mjs` — regenerates `extensions/models.ts` from SumoPod's public catalogue endpoints (`api-gate.sumopod.com/webhook/sumopod/ai/{models,model-discounts}` + `ai.sumopod.com/public/model_hub`). Run with `npm run sync-models`.
- `.github/workflows/sync-models.yml` — daily cron that regenerates the catalogue and auto-commits changes to `main`.

### Changed
- Model catalogue is now auto-generated from SumoPod (no more hand-editing). Resynced to the live list: added Claude Opus 4.7/4.8, GPT-5.3/5.4 family, Gemini 3.1 Flash Lite & 3.5 Flash, Gemma 4 31B, Qwen 3.6 27B, Qwen 3.7 Max, MiniMax M3; dropped models SumoPod no longer serves (Cloudeka free tier, Kimi K2.5, Mimo V2 variants, Gemini 2.0). Discount badges now include expiry dates; `reasoning`/`input` flags now sourced from SumoPod's model metadata.
- `registerProvider` now passes `apiKey: "$SUMOPOD_API_KEY"` (explicit env-var reference) — fixes Pi's legacy env-var deprecation warning.

### Provider Details
- Provider ID: `sumopod`
- API Base URL: `https://ai.sumopod.com/v1`
- API Type: `openai-completions`
- Auth: Bearer token via `SUMOPOD_API_KEY` env var

### Author
- Package by [Wahyudi Chrisdianto](https://kaiyu.dev)
