-
Notifications
You must be signed in to change notification settings - Fork 0
features session capture
Active contributors: Douwe de Vries, vriesd
Session capture lets testers create a bounded Session, write notes, preserve context, and build structured records from the testing timeline. The feature spans frontend views, Tauri commands, SessionService, and SQLite tables.
| File | Purpose |
|---|---|
frontend/src/views/SessionEditorView.tsx |
Notes editor UI and note actions. |
frontend/src/app/sessionActions.ts |
Create/open/save/delete Session and note operations. |
frontend/src/app/useAppController.ts |
Boot, active Session state, autosave, and view state. |
src-tauri/src/commands/sessions.rs |
Session command handlers. |
src-tauri/src/commands/entries.rs |
Entry command handlers. |
crates/qa-scribe-core/src/domain/session.rs |
Session DTOs and patches. |
crates/qa-scribe-core/src/domain/entry.rs |
Entry DTOs, drafts, and types. |
crates/qa-scribe-core/src/services/session_service/sessions.rs |
Session service operations. |
crates/qa-scribe-core/src/services/session_service/entries.rs |
Entry service operations. |
The frontend boots with getSettings() and listSessions(), opens the first Session when present, and ensures the active note Entry exists. Title and body autosave are debounced in frontend/src/app/useAppController.ts, while saveNoteNow() flushes pending changes before navigation, generation, or record creation.
graph LR
Editor[SessionEditorView] --> Actions[sessionActions]
Actions --> Bridge[tauri.ts]
Bridge --> Commands[sessions.rs and entries.rs]
Commands --> Service[SessionService]
Service --> SQLite[(SQLite sessions and entries)]
Session capture feeds Rich record editing, Managed attachments, and AI-assisted Testware. It relies on Rust core for validation and storage.
Change UI copy or controls in frontend/src/views/SessionEditorView.tsx, workflow state in frontend/src/app/sessionActions.ts, and persistence rules under crates/qa-scribe-core/src/services/session_service.
- QA Scribe
- Download overview video (MP4)
- Architecture
- Getting started
- Glossary
- By the numbers
- Lore
- Fun facts
- Video overview
- How to contribute
- Development workflow
- Testing
- Debugging
- Patterns and conventions
- Tooling
- Applications
- Desktop app
- Smoke harness
- Systems
- Rust core
- Tauri command bridge
- Frontend shell
- Generation jobs
- Provider detection
- Release tooling
- Features
- Session capture
- Rich record editing
- Managed attachments
- AI-assisted Testware
- Settings and provider setup
- Crates
- qa-scribe-core
- qa-scribe-app
- Primitives
- Session
- Entry
- Finding
- Draft
- Evidence
- API
- Tauri commands
- Deployment
- Security
- Background
- Architecture decisions
- Migration context
- Cleanup opportunities
- TODOs and FIXMEs
- Complexity hotspots
- Reference
- Configuration
- Data models
- Dependencies