Remove obsolete [1m] model variants

Since March 2026 the 1M-token context window is the default for Opus 4.6/4.7
and Sonnet 4.6 – no separate variant or beta header needed. The "[1m]" suffix
on model IDs is dead code now and would even produce HTTP 400 against the
current API.

Cleanup:
- Drop 3 [1m] options from the agent model dropdown; default selection moves
  from opus-4-7[1m] to opus-4-7.
- Drop 5 [1m] mappings from ResolveModelId and add a defensive Replace as a
  safety net for any agent record still holding an old value.
- One-shot startup migration on agents.model + chains.model strips the suffix
  so existing chains can be re-chatted without errors.
- ARCHITECTURE.md reflects the slimmed list and explains why 1M is now default.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
MelekiandClaude Opus 4.7 committed 2026-05-31 21:25:35 +02:00
1 parent 271902f32d
commit 112fd70f3b
4 files changed
+17 -16

No files matched your search

+2 -7
View File
@@ -844,7 +844,7 @@ Ein **Agent** definiert die Persönlichkeit und Fähigkeiten der AI:
|-------------------|------------------------------------------------------------------| |-------------------|------------------------------------------------------------------|
| `Name` | Anzeigename | | `Name` | Anzeigename |
| `Avatar` | Base64 Data-URL (WebP, 512px) + `AvatarSmall` (WebP, 256px Thumbnail) | | `Avatar` | Base64 Data-URL (WebP, 512px) + `AvatarSmall` (WebP, 256px Thumbnail) |
| `Model` | `sonnet`, `sonnet-4-5`, `sonnet-4-6`, `sonnet-4-6[1m]`, `opus`, `opus-4-5`, `opus-4-6`, `opus-4-6[1m]`, `opus-4-7`, `opus-4-7[1m]`, `haiku`, `haiku-4-5` (Default für `opus` ist `claude-opus-4-7`) | | `Model` | `sonnet`, `sonnet-4-5`, `sonnet-4-6`, `opus`, `opus-4-5`, `opus-4-6`, `opus-4-7`, `haiku`, `haiku-4-5` (Default für `opus` ist `claude-opus-4-7`) |
| `CustomCommands` | JSON-Array mit Slash-Commands (Label + Prompt) | | `CustomCommands` | JSON-Array mit Slash-Commands (Label + Prompt) |
| `AutoCommit` | `""` (nichts), `"mention"` (anmerken – nur auf User-Request), `"enforce"` (erzwingen – nach jeder Änderung), `"forbid"` (strikt verboten) | | `AutoCommit` | `""` (nichts), `"mention"` (anmerken – nur auf User-Request), `"enforce"` (erzwingen – nach jeder Änderung), `"forbid"` (strikt verboten) |
| `UseSoul` | SOUL.md in System-Prompt einbinden | | `UseSoul` | SOUL.md in System-Prompt einbinden |
@@ -860,23 +860,18 @@ Ein **Agent** definiert die Persönlichkeit und Fähigkeiten der AI:
``` ```
"sonnet" → claude-sonnet-4-6 "sonnet" → claude-sonnet-4-6
"sonnet[1m]" → claude-sonnet-4-6[1m] (1M Context)
"sonnet-4-5" → claude-sonnet-4-5 "sonnet-4-5" → claude-sonnet-4-5
"sonnet-4-6" → claude-sonnet-4-6 "sonnet-4-6" → claude-sonnet-4-6
"sonnet-4-6[1m]" → claude-sonnet-4-6[1m]
"opus" → claude-opus-4-7 "opus" → claude-opus-4-7
"opus[1m]" → claude-opus-4-7[1m] (1M Context)
"opus-4-5" → claude-opus-4-5 "opus-4-5" → claude-opus-4-5
"opus-4-6" → claude-opus-4-6 "opus-4-6" → claude-opus-4-6
"opus-4-6[1m]" → claude-opus-4-6[1m]
"opus-4-7" → claude-opus-4-7 "opus-4-7" → claude-opus-4-7
"opus-4-7[1m]" → claude-opus-4-7[1m]
"haiku" → claude-haiku-4-5 "haiku" → claude-haiku-4-5
"haiku-4-5" → claude-haiku-4-5 "haiku-4-5" → claude-haiku-4-5
(default) → claude-sonnet-4-6 (default) → claude-sonnet-4-6
``` ```
Das `[1m]`-Suffix aktiviert das **1-Million-Token-Context-Fenster** (Anthropic Beta-Feature, längere History/größere Codebases möglich). **1-Million-Token-Context** ist seit März 2026 Default bei **Opus 4.6/4.7/4.8 + Sonnet 4.6** – kein separater Beta-Header und kein `[1m]`-Suffix mehr nötig. Alte DB-Einträge mit `[1m]`-Suffix werden bei Startup automatisch migriert (`UPDATE agents/chains SET model = REPLACE(model, '[1m]', '')`).
--- ---
+5 -5
View File
@@ -34,20 +34,20 @@ public class ChatService
// OpenAI-kompatible Provider werden unverändert durchgereicht (Format: "provider:model") // OpenAI-kompatible Provider werden unverändert durchgereicht (Format: "provider:model")
if (OpenAiService.IsOpenAiProvider(model)) return model; if (OpenAiService.IsOpenAiProvider(model)) return model;
// Defensiv-Strip: alte "[1m]"-Suffixe aus DB transparent normalisieren.
// 1M-Context ist seit März 2026 Default bei Opus 4.6/4.7/4.8 + Sonnet 4.6 – kein Suffix mehr nötig.
if (!string.IsNullOrEmpty(model) && model.Contains("[1m]"))
model = model.Replace("[1m]", "");
return model switch return model switch
{ {
"sonnet" => "claude-sonnet-4-6", "sonnet" => "claude-sonnet-4-6",
"sonnet[1m]" => "claude-sonnet-4-6[1m]",
"sonnet-4-5" => "claude-sonnet-4-5", "sonnet-4-5" => "claude-sonnet-4-5",
"sonnet-4-6" => "claude-sonnet-4-6", "sonnet-4-6" => "claude-sonnet-4-6",
"sonnet-4-6[1m]" => "claude-sonnet-4-6[1m]",
"opus" => "claude-opus-4-7", "opus" => "claude-opus-4-7",
"opus[1m]" => "claude-opus-4-7[1m]",
"opus-4-5" => "claude-opus-4-5", "opus-4-5" => "claude-opus-4-5",
"opus-4-6" => "claude-opus-4-6", "opus-4-6" => "claude-opus-4-6",
"opus-4-6[1m]" => "claude-opus-4-6[1m]",
"opus-4-7" => "claude-opus-4-7", "opus-4-7" => "claude-opus-4-7",
"opus-4-7[1m]" => "claude-opus-4-7[1m]",
"haiku" => "claude-haiku-4-5", "haiku" => "claude-haiku-4-5",
"haiku-4-5" => "claude-haiku-4-5", "haiku-4-5" => "claude-haiku-4-5",
_ => "claude-sonnet-4-6" _ => "claude-sonnet-4-6"
+9
View File
@@ -197,6 +197,15 @@ public partial class DatabaseService
TryAddColumn(conn, "sessions", "unity_mcp_token", "TEXT"); TryAddColumn(conn, "sessions", "unity_mcp_token", "TEXT");
TryAddColumn(conn, "messages", "tag", "TEXT"); TryAddColumn(conn, "messages", "tag", "TEXT");
// Migration: 1M-Suffix entfernen (Mai 2026). Seit März 2026 ist 1M-Context Default
// bei Opus 4.6/4.7/4.8 + Sonnet 4.6 – kein "[1m]"-Suffix mehr nötig.
try
{
conn.Execute("UPDATE agents SET model = REPLACE(model, '[1m]', '') WHERE model LIKE '%[1m]%'");
conn.Execute("UPDATE chains SET model = REPLACE(model, '[1m]', '') WHERE model LIKE '%[1m]%'");
}
catch { /* idempotent */ }
conn.Execute(@" conn.Execute(@"
CREATE TABLE IF NOT EXISTS agent_skills ( CREATE TABLE IF NOT EXISTS agent_skills (
id INTEGER PRIMARY KEY AUTOINCREMENT, id INTEGER PRIMARY KEY AUTOINCREMENT,
+1 -4
View File
@@ -201,12 +201,9 @@
<select id="agentModel"> <select id="agentModel">
<option value="sonnet-4-5">sonnet-4-5</option> <option value="sonnet-4-5">sonnet-4-5</option>
<option value="sonnet-4-6">sonnet-4-6</option> <option value="sonnet-4-6">sonnet-4-6</option>
<option value="sonnet-4-6[1m]">sonnet-4-6[1m]</option>
<option value="opus-4-5">opus-4-5</option> <option value="opus-4-5">opus-4-5</option>
<option value="opus-4-6">opus-4-6</option> <option value="opus-4-6">opus-4-6</option>
<option value="opus-4-6[1m]">opus-4-6[1m]</option> <option value="opus-4-7" selected>opus-4-7</option>
<option value="opus-4-7">opus-4-7</option>
<option value="opus-4-7[1m]" selected>opus-4-7[1m]</option>
<option value="haiku-4-5">haiku-4-5</option> <option value="haiku-4-5">haiku-4-5</option>
<optgroup label="OpenAI" id="openaiOptgroup"> <optgroup label="OpenAI" id="openaiOptgroup">
<option value="" disabled>Wird geladen...</option> <option value="" disabled>Wird geladen...</option>