Implements issue #13 — right sidebar for session configuration with override level selection, disabled tools checkboxes, and granted permissions input. Integrates config into chat page header with toggle button and non-default indicator. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
31 lines
1.2 KiB
Markdown
31 lines
1.2 KiB
Markdown
---
|
|
---
|
|
|
|
# Issue #13: Session config sidebar component
|
|
|
|
**Status:** COMPLETED
|
|
**Issue:** https://git.shahondin1624.de/llm-multiverse/llm-multiverse-ui/issues/13
|
|
**Branch:** `feature/issue-13-config-sidebar`
|
|
|
|
## Acceptance Criteria
|
|
|
|
- [x] Right sidebar component for session configuration
|
|
- [x] Override level selection (None / Relax / All) with radio-style buttons
|
|
- [x] Disabled tools toggle checkboxes using ToolType enum values
|
|
- [x] Granted permissions free-text input with add/remove
|
|
- [x] Toggle button in header with non-default config indicator dot
|
|
- [x] Reset button to restore defaults
|
|
- [x] Config passed to processRequest on send
|
|
|
|
## Implementation
|
|
|
|
### Components
|
|
- `ConfigSidebar.svelte` — right sidebar with override level, disabled tools, and granted permissions sections
|
|
- Updated `+page.svelte` — added config toggle button in header, sessionConfig state, and ConfigSidebar integration
|
|
|
|
### Key Decisions
|
|
- Used `@bufbuild/protobuf` `create()` with `SessionConfigSchema` for immutable config updates
|
|
- Config state lives in `+page.svelte` and is passed down as prop
|
|
- Non-default config indicator (amber dot) shown in both the header toggle button and sidebar header
|
|
- Disabled tools stored as string labels matching ToolType enum display names
|