Story: Connection management
Table of Contents
This page documents a story in Sprint 09. It captures the goal, current status, acceptance criteria, and the tasks that compose it.
Goal
Solve the which server am I talking to? problem the multi-environment
agent workflow surfaces. Land ores.connections as the local-SQLite
bookmark store, a Connection Browser MDI on top of it, polish the
browser, and modernise the login dialog to consume saved connections.
Status
| Field | Value |
|---|---|
| State | DONE |
| Parent sprint | Sprint 09 |
| Now | Completed 2026-01-15. |
| Waiting on | None. |
| Next | None. |
| Last touched | 2026-01-15 |
Acceptance
- Prodigy lists all environments in a single buffer.
ores.connectionspresent with SQLite persistence and AES-256-GCM encryption.- Connection Browser MDI covers folders + environments + master password.
- Drag-reorder, inline rename, password validation, test-connection action all in place.
- Modernised login + sign-up dialogs consume saved connections; auto-login after sign-up.
Tasks
| Task | State | Start | End | Description |
|---|---|---|---|---|
| Prodigy supports multiple environments | DONE | 2026-05-19 | 2026-01-13 | Prodigy shows all environments in a single buffer for running multiple claudes / qwens / geminis side-by-side. |
| Add ores.connections core | DONE | 2026-05-19 | 2026-01-13 | New component for server connection bookmarks: folder + tag + server_environment + environment_tag domain types; SQLite persistence with AES-256-GCM password encryption and PBKDF2 key derivation; connection_manager service. |
| Add Connection Browser MDI window | DONE | 2026-05-19 | 2026-01-13 | Hierarchical tree view of folders and environments; master-password support; full CRUD for folders and environments; database purge; pre-fill login from saved connection with auto-submit. |
| Improvements to connection browser | DONE | 2026-05-19 | 2026-01-15 | Inline rename, drag-reorder folders, password policy validation, test-connection button, expanded start state, tags support, brighter-disabled-state fix, login-dialog integration. |
| Modernise login dialog | DONE | 2026-05-19 | 2026-01-15 | Dark-themed, modeless LoginDialog and SignUpDialog as MDI subwindows; auto-login after sign-up; saved-connections dropdown. |
Decisions
- Local SQLite, not server Postgres
- connection bookmarks belong on the client machine; storing them server-side defeats the purpose.
- Modeless login dialog
- lets the user keep it open while exploring saved connections, which the modal version blocked.
- Master password gates the encrypted store
- simple model; everything is encrypted at rest with AES-256-GCM derived from PBKDF2.
Out of scope
- SSO / federated login.
- Per-environment role pre-fetch.
See also
- Security module — supplies the crypto primitives.
- Login and sessions (sprint 03) — origin of the login surface modernised here.