- Rollebasert arv: edge-roller styrer trait-synlighet per bruker (deltaker ser mikser, lytter ser bare chat) - Mine ting: oversiktspanel i Hjem, dra node inn i verktøy for å koble dem (erstatter mottak som panel) - Chat-merging: dra chat oppå chat → live flettet visning eller snapshot med AI-beriking og brukerprompt Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
113 lines
3.5 KiB
Markdown
113 lines
3.5 KiB
Markdown
# Proposal: Oversiktspanelet — «Mine ting»
|
|
|
|
## Konsept
|
|
|
|
Et panel i Hjem-arbeidsflaten som viser alle noder du er
|
|
tilknyttet, gruppert etter type. Erstatter mottak-konseptet
|
|
som et verktøy i arbeidsflaten — ikke en egen side.
|
|
|
|
## Problemstilling
|
|
|
|
Når du åpner et chat-panel i arbeidsflaten, hvilken chat?
|
|
Paneler instansieres uten kontekst. Det mangler en bro mellom
|
|
"mine ting" og "verktøyene jeg bruker dem med".
|
|
|
|
## Modell
|
|
|
|
«Mine ting» er et panel som spør grafen: "vis meg alt jeg
|
|
har edges til, gruppert."
|
|
|
|
```
|
|
┌─ Mine ting ────────────────────────┐
|
|
│ │
|
|
│ Samtaler (3) │
|
|
│ 💬 Redaksjonen nylig │
|
|
│ 💬 Vegard & Trond i går │
|
|
│ 💬 Sidelinja tech 3d │
|
|
│ │
|
|
│ Prosjekter (2) │
|
|
│ 📋 Sidelinja │
|
|
│ 📋 Synops utvikling │
|
|
│ │
|
|
│ Møter (1) │
|
|
│ 🎙️ Neste innspilling fre │
|
|
│ │
|
|
│ Dokumenter (4) │
|
|
│ 📝 Episodenotat S02E05 │
|
|
│ 📝 Intervjuspørsmål │
|
|
│ ... │
|
|
└────────────────────────────────────┘
|
|
```
|
|
|
|
## Interaksjon: dra node → verktøy
|
|
|
|
Hovedinteraksjonen er drag-and-drop:
|
|
|
|
**Dra en samtale inn i et chat-panel:**
|
|
Chat-panelet kobles til den samtalen og viser meldingene.
|
|
|
|
**Dra et prosjekt inn i et kanban-panel:**
|
|
Kanban-panelet kobles til det prosjektet og viser oppgavene.
|
|
|
|
**Klikk på en node:**
|
|
Åpner det mest naturlige verktøyet for den node-typen:
|
|
- Samtale → chat-panel åpnes/kobles
|
|
- Prosjekt → navigerer til samlingens arbeidsflate
|
|
- Dokument → editor-panel åpnes med dokumentet
|
|
|
|
## Gruppering
|
|
|
|
Noder grupperes etter `node_kind` og edge-type:
|
|
|
|
| Gruppe | Kriterier |
|
|
|--------|-----------|
|
|
| Samtaler | `node_kind: 'communication'` + din edge |
|
|
| Prosjekter | `node_kind: 'collection'` + din edge |
|
|
| Møter | Samlinger med `scheduled`-edges i fremtiden |
|
|
| Dokumenter | `node_kind: 'content'` + din edge |
|
|
| Media | `node_kind: 'media'` + din edge |
|
|
|
|
Sortert etter sist interaksjon (recency).
|
|
|
|
## Kobling av panel til node
|
|
|
|
Når et verktøy-panel kobles til en node trenger panelet en
|
|
`contextId` — IDen til noden det opererer på. I dag sendes
|
|
`collection={undefined}` for paneler i Hjem. Med Mine ting:
|
|
|
|
```
|
|
1. Bruker drar "Redaksjonen" fra Mine ting til chat-panelet
|
|
2. Chat-panelet mottar node_id via drop
|
|
3. Chat-panelet setter sin kontekst til den samtalen
|
|
4. Meldinger lastes og vises
|
|
```
|
|
|
|
Samme mekanisme fungerer for alle verktøy:
|
|
- Editor + dokument → redigér dokumentet
|
|
- Kanban + samling → vis samlingens oppgaver
|
|
- Kalender + samling → vis samlingens hendelser
|
|
|
|
## Filtrering og søk
|
|
|
|
- Søkefelt øverst i panelet
|
|
- Filtre: type (samtale, prosjekt, ...), rolle (eier, deltaker, ...)
|
|
- Vis/skjul grupper
|
|
|
|
## Registrering i workspace
|
|
|
|
Ny trait i `TRAIT_PANEL_INFO`:
|
|
```
|
|
mine_ting: { title: 'Mine ting', icon: '📂', defaultWidth: 320, defaultHeight: 500 }
|
|
```
|
|
|
|
Bør være default-panel i Hjem-arbeidsflaten for nye brukere.
|
|
|
|
## Hva som eksisterer allerede
|
|
|
|
- Alle noder med edges til bruker (✓)
|
|
- Gruppering etter node_kind (✓)
|
|
- Drag-and-drop mellom paneler (✓)
|
|
- Recency-tracking (✓)
|
|
- BlockShell-paneler (✓)
|
|
|
|
Primært en ny Svelte-komponent + dra-kobling-mekanisme for paneler.
|