Story: Client console and Qt integration
Table of Contents
This page documents a story in Sprint 03. It captures the goal, current status, acceptance criteria, and the tasks that compose it.
Goal
Take the cobalt-based client/server runtime from sprint 02 and wire it into the user-facing surfaces: the console (with the client merged in) and the Qt GUI. This is the update UI layer to use new socket code half of the sprint mission.
Status
| Field | Value |
|---|---|
| State | DONE |
| Parent sprint | Sprint 03 |
| Now | Story closed; Qt GUI runs over cobalt sockets; client folded into the console. |
| Waiting on | None. |
| Next | None. |
| Last touched | 2025-12-15 |
Acceptance
- The standalone client is gone; the console hosts it.
- The Qt GUI uses the cobalt client (no direct DB / RPC calls remain).
- Prodigy launcher discovers commands by tag.
- Locking is in place where concurrent UI/server access can race.
Tasks
| Task | State | Start | End | Description |
|---|---|---|---|---|
| Merge client into console | DONE | 2025-12-15 | 2025-12-15 | Fold the standalone client into the console application so there's one user-facing binary. |
| Enable Qt GUI | DONE | 2025-12-15 | 2025-12-15 | Wire the Qt GUI to the cobalt-based client so it runs over the new socket layer. |
| Update prodigy to use tags | DONE | 2025-12-15 | 2025-12-15 | Update the Prodigy launcher integration to discover commands via tags rather than hardcoded names. |
Decisions
- One user-facing binary
- collapsing the client into the console removes a redundant entry point and simplifies packaging.
- Tag-based launcher discovery
- keeps the Prodigy menu in sync automatically as commands gain or lose tags.
Out of scope
- A bespoke Qt theme.
- Multi-window layouts (deferred).
See also
- ores.qt — the Qt component the story rewires.
- ores.connections — the connection primitives the Qt client speaks.
- ores.eventing — the messaging substrate underneath.
- ores.shell — the console host that absorbs the standalone client.
- Client/server foundations (sprint 02) — predecessor story.
- Qt UI scaffold (sprint 01) — predecessor story.