refactor: Stack-Audit, Doku-Bereinigung und Governor-Cleanup (Stand 19.08.2026)
Ampel / ampel (push) Successful in 23s
Ampel / ampel (push) Successful in 23s
This commit is contained in:
@@ -583,40 +583,6 @@ export interface ChronikResp {
|
||||
items: ChronikItem[]
|
||||
}
|
||||
|
||||
// ── Governor (Token-Wächter :8100, GET /api/governor) ────────────────────────
|
||||
// Sitzt zwischen Coding-Agenten und Gateway. `est` ist seine Schätzung VOR dem Lauf,
|
||||
// `exact` die echten prompt_tokens AUS der Antwort — die Differenz ist sein Fehler,
|
||||
// und aus ihr lernt er (chars_per_token je Modell). action: passthrough | soft | hard | defer.
|
||||
export interface GovernorRun {
|
||||
t: number
|
||||
model: string
|
||||
est: number | null
|
||||
exact: number | null
|
||||
action: string
|
||||
}
|
||||
|
||||
export interface GovernorStatus {
|
||||
ok: boolean
|
||||
reachable: boolean
|
||||
error?: string
|
||||
upstream?: string
|
||||
soft?: number
|
||||
hard?: number | null
|
||||
uptime_s?: number
|
||||
counters?: {
|
||||
chat: number
|
||||
soft: number
|
||||
hard: number
|
||||
passthrough: number
|
||||
tokens_prompt: number
|
||||
tokens_completion: number
|
||||
}
|
||||
calibration?: Record<string, { chars_per_token: number; samples: number }>
|
||||
calibration_default?: number
|
||||
exempt_models?: string[]
|
||||
recent?: GovernorRun[]
|
||||
}
|
||||
|
||||
// ── Eigenleben („Von allein": Skills + Vorschlags-Bilanz der Box) ────────────
|
||||
export interface EigenlebenSkill {
|
||||
id: string
|
||||
|
||||
@@ -14,7 +14,6 @@ import {
|
||||
type DiscoverResp,
|
||||
type DraftsResp,
|
||||
type EigenlebenResp,
|
||||
type GovernorStatus,
|
||||
type GroupsResp,
|
||||
type HermesBrainResp,
|
||||
type Health,
|
||||
@@ -61,7 +60,6 @@ export const qk = {
|
||||
auftragsbuch: ["auftragsbuch"] as const,
|
||||
ideen: ["ideen"] as const,
|
||||
chronik: ["chronik"] as const,
|
||||
governor: ["governor"] as const,
|
||||
eigenleben: ["eigenleben"] as const,
|
||||
wissen: ["wissen"] as const,
|
||||
zeitmaschine: ["zeitmaschine"] as const,
|
||||
@@ -159,16 +157,6 @@ export const useVoiceTrace = (limit = 12, refetchInterval: number = TAKT.schnell
|
||||
select: (d) => d.turns ?? [],
|
||||
})
|
||||
|
||||
// Token-Wächter (:8100). Ist er aus, liefert das Backend `reachable:false` statt zu werfen —
|
||||
// deshalb kein Retry-Sturm und kein Fehlerzustand in der Kachel.
|
||||
export const useGovernor = (refetchInterval: number = TAKT.normal) =>
|
||||
useQuery({
|
||||
queryKey: qk.governor,
|
||||
queryFn: () => api<GovernorStatus>("/api/governor"),
|
||||
refetchInterval,
|
||||
retry: false,
|
||||
})
|
||||
|
||||
export const useMemoryGraph = (enabled = true) =>
|
||||
useQuery({
|
||||
queryKey: qk.memoryGraph,
|
||||
|
||||
Reference in New Issue
Block a user