Feat: reasoning-Rolle entfernt — Modell geloescht, UI bereinigt

- Nemotron-3-Nano-Omni-30B-A3B-Reasoning von der Box entfernt (25 GB freigegeben)
- llama-swap config: Modell-Eintrag und reasoning-Alias entfernt
- sources.py: reasoning-Kategorie aus CATEGORIES entfernt
- maintenance.py: reasoning->heavy Mapping aus ROLE_MAP entfernt
- llamaswap.py: reasoning aus ROLE_IDS entfernt
- Frontend: reasoning aus allen ROLES-Arrays entfernt (ModelBadges, RolesCard, Cockpit)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Hitonabi
2026-06-27 00:11:15 +02:00
parent 0afddcdfdc
commit 45bede6579
8 changed files with 19 additions and 25 deletions
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -7,7 +7,7 @@
<link rel="manifest" href="/manifest.webmanifest" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<title>Mission Control 2.0</title>
<script type="module" crossorigin src="/assets/index-BRFJuGKC.js"></script>
<script type="module" crossorigin src="/assets/index-D4mBflTE.js"></script>
<link rel="stylesheet" crossorigin href="/assets/index-C0dfTDFj.css">
</head>
<body>
@@ -2,7 +2,7 @@ import { Layers } from "lucide-react"
import { useModels } from "@/lib/queries"
import { cn } from "@/lib/utils"
const ROLES = ["fast", "heavy", "coder", "reasoning", "vision", "scout"]
const ROLES = ["fast", "heavy", "coder", "vision", "scout"]
export function RolesCard() {
const { data } = useModels(3_000)
@@ -40,7 +40,6 @@ export function RolesCard() {
role === "fast" ? "bg-cyan-500/15 text-cyan-400 border-cyan-500/25" :
role === "heavy" ? "bg-amber-500/15 text-amber-400 border-amber-500/25" :
role === "coder" ? "bg-violet-500/15 text-violet-400 border-violet-500/25" :
role === "reasoning" ? "bg-emerald-500/15 text-emerald-400 border-emerald-500/25" :
role === "vision" ? "bg-pink-500/15 text-pink-400 border-pink-500/25" :
"bg-teal-500/15 text-teal-400 border-teal-500/25"
)}>
@@ -1,7 +1,7 @@
import { type Fit } from "@/lib/api"
import { cn } from "@/lib/utils"
export const ROLES = ["fast", "heavy", "coder", "reasoning", "agent", "vision", "scout"]
export const ROLES = ["fast", "heavy", "coder", "agent", "vision", "scout"]
export function FitBadge({ fit }: { fit: Fit }) {
const tone = {
+2 -4
View File
@@ -440,8 +440,7 @@ export function Cockpit() {
const activeModel = getModelForRole(role)
const isWarm = activeModel ? running.includes(activeModel.name) : false
// Skip "reasoning" & "agent" to keep layout neat and identical to canonical roles
if (role === "reasoning" || role === "agent") return null
if (role === "agent") return null
const indexMap = { fast: 0, heavy: 1, coder: 2, vision: 3, scout: 4 }[role] as number
return (
@@ -591,7 +590,7 @@ export function Cockpit() {
Gateway Steckplatz-Belegung (Slot-Zuweisung)
</div>
<div className="grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-6 gap-3">
{["fast", "heavy", "coder", "reasoning", "vision", "scout"].map((role) => {
{["fast", "heavy", "coder", "vision", "scout"].map((role) => {
const m = models.find((x) => x.role === role)
const isWarm = m ? running.includes(m.name) : false
@@ -613,7 +612,6 @@ export function Cockpit() {
role === "fast" ? "bg-cyan-500/10 text-cyan-400 border-cyan-500/20" :
role === "heavy" ? "bg-amber-500/10 text-amber-400 border-amber-500/20" :
role === "coder" ? "bg-violet-500/10 text-violet-400 border-violet-500/20" :
role === "reasoning" ? "bg-emerald-500/10 text-emerald-400 border-emerald-500/20" :
role === "vision" ? "bg-pink-500/10 text-pink-400 border-pink-500/20" :
"bg-teal-500/10 text-teal-400 border-teal-500/20"
)}>{role}</span>