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

Emacs 29.1 (Org mode 9.6.6)