synops/docs/features/responskvalitet.md
vegard b971347dc6 Spesifiser responskvalitet: intelligens/innsats-nivåer med ↑-knapp
Ny feature-spec for synlig kvalitetsstyring av bot-svar:
- Tre nivåer intelligens (Haiku/Sonnet/Opus) og innsats (low/med/high)
- Diskret indikator (🧠●●○ 💪●○○) i svar-header
- Én ↑-knapp for "gi bedre svar" — bumper begge nivåer
- Automatisk nivåvalg fra heuristikker, bruker overstyrer med ↑
- retry_of-edge mellom erstattet og nytt svar
- Default-nivå konfigurerbart per cli_tool-node i PG

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 12:23:13 +00:00

147 lines
3.7 KiB
Markdown

# Feature: Responskvalitet (intelligens og innsats)
## Konsept
Hvert bot-svar har to synlige dimensjoner: **intelligens** (hvilken
modell) og **innsats** (hvor grundig). Brukeren ser en diskret
indikator og har én knapp for å be om bedre svar.
## Nivåer
### Intelligens (modellvalg)
| Nivå | Indikator | Modell | Bruk |
|------|-----------|--------|------|
| 1 | `🧠●○○` | Haiku | Klassifisering, triage, enkle oppslag |
| 2 | `🧠●●○` | Sonnet | Chat-svar, oppsummering, daglig bruk |
| 3 | `🧠●●●` | Opus | Arkitektur, analyse, koderevisjoner |
### Innsats (resonnering)
| Nivå | Indikator | Effort | Bruk |
|------|-----------|--------|------|
| 1 | `💪●○○` | low | Kort svar, ja/nei, lookup |
| 2 | `💪●●○` | medium | Normal respons, noe resonnering |
| 3 | `💪●●●` | high | Grundig analyse, lang gjennomgang |
## Brukeropplevelse
### Indikator
Diskret visning i bot-svarens header:
```
┌──────────────────────────────────────┐
│ @bot 🧠●●○ 💪●○○ [↑] │
│ │
│ Click-through rate — andel som │
│ klikker på en lenke. │
└──────────────────────────────────────┘
```
### ↑-knappen
Én knapp. Trykk = bedre svar. Ingen meny, ingen konfigurasjon.
```
Første svar: 🧠●○○ 💪●○○ [↑]
Trykk ↑: 🧠●●○ 💪●●○ [↑] (nytt svar erstatter)
Trykk ↑ igjen: 🧠●●● 💪●●● [↑ dimmet] (maks)
```
Knappen bumper begge dimensjoner ett nivå. Ved maks er den
dimmet/deaktivert.
### Ingen ↓-knapp
Ingen ber om dårligere svar. Systemet starter lavt,
brukeren eskalerer ved behov. Kostnad øker bare når noen
faktisk vil ha mer.
## Automatisk nivåvalg
Portvokteren velger startnivå basert på heuristikker:
| Signal | Intelligens | Innsats |
|--------|-------------|---------|
| Kort spørsmål (< 20 ord) | 1 | 1 |
| Normalt spørsmål | 2 | 2 |
| Refererer til arkitektur/kode | 2 | 3 |
| Eksplisitt "grundig"/"detaljert" | 3 | 3 |
| Work item med tag "bug" | 2 | 2 |
| Work item med tag "feature" | 2 | 3 |
Brukeren kan alltid overstyre med -knappen.
## Metadata på svar-noden
```jsonc
{
"bot_response": true,
"intelligence": 2,
"effort": 2,
"model": "claude-sonnet-4-6",
"tokens_in": 1240,
"tokens_out": 580,
"retry_of": null
}
```
Ved -bump:
```jsonc
{
"bot_response": true,
"intelligence": 3,
"effort": 3,
"model": "claude-opus-4-6",
"tokens_in": 2100,
"tokens_out": 1450,
"retry_of": "uuid-av-forrige-svar"
}
```
## Edge-modell
```
nytt svar ──retry_of──→ forrige svar (erstattet)
```
Forrige svar får `metadata.replaced: true` og vises dimmet
eller kollapset. Historikken er bevart brukeren kan utvide
for å se hva det opprinnelige svaret var.
## CLI-integrasjon
Portvokteren sender modellvalg til `synops-respond`:
```bash
synops-respond \
--communication-id <uuid> \
--message-id <uuid> \
--model claude-opus-4-6 \
--effort high
```
`synops-respond` mapper `--model` til Claude CLI sitt
`--model`-flagg og `--effort` til prompt-strategi
(kort/normal/grundig systemprompt).
## cli_tool-noder og default-nivå
Hvert CLI-verktøy har default intelligens/innsats i sin
`cli_tool`-node metadata:
```jsonc
{
"binary": "synops-respond",
"default_intelligence": 2,
"default_effort": 2
}
```
Oppdaterbar i PG uten rekompilering.
## Bygger på
- `docs/infra/robusthet.md` LLM fallback-kjede
- `docs/concepts/arbeidstavlen.md` @bot-konvensjonen
- `docs/retninger/unix_filosofi.md` generisk dispatch, cli_tool-noder